latex - NullPointerException with Texlipse and Miktex 2.9 -
when using texlipse miktex 2.9 on windows machine, system throws nullpointerexcpetion each time document compiled.
the problem disappeared after have updated miktex 2.9 distribution using update manager. hope helps others have same problem.
regards, pwndrian
to me happens too.
this workaround did, think not quite optimal solution. saw there bug opened http://sourceforge.net/tracker/?func=detail&aid=3306779&group_id=133306&atid=726818.
there class net.sourceforge.texlipse.builder.texlipsebuilder
, made following changes overcome problem(please note differences in both functions). problem in texlipseplugin in function getcurrentproject acteditor null since there no active editor when importing projects or when pressing on clean while no editor open.
@override protected iproject[] build(int kind, map args, iprogressmonitor monitor) throws coreexception { builderregistry.clearconsole(); iworkbenchpage page = texlipseplugin.getcurrentworkbenchpage(); ieditorpart acteditor = null; if (page.iseditorareavisible() && page.getactiveeditor() != null) { acteditor = page.getactiveeditor(); } if ( acteditor == null ) return null; if (isuptodate(getproject())) return null; object s = texlipseproperties.getprojectproperty(getproject(), texlipseproperties.partial_build_property); if (s != null) { partialbuild(monitor); } else { buildfile(null, monitor); } return null; } /** * clean temporary files. * * @see incrementalprojectbuilder.clean */ @override protected void clean(iprogressmonitor monitor) throws coreexception { iproject project = getproject(); builderregistry.clearconsole(); iworkbenchpage page = texlipseplugin.getcurrentworkbenchpage(); ieditorpart acteditor = null; if (page.iseditorareavisible() && page.getactiveeditor() != null) { acteditor = page.getactiveeditor(); } if ( acteditor == null ) return; // reset session variables texlipseproperties.setsessionproperty(project, texlipseproperties.session_latex_rerun, null); texlipseproperties.setsessionproperty(project, texlipseproperties.session_bibtex_rerun, null); texlipseproperties.setsessionproperty(project, texlipseproperties.bibfiles_changed, null); // check main file string mainfile = texlipseproperties.getprojectproperty(project, texlipseproperties.mainfile_property); if (mainfile == null || mainfile.length() == 0) { // main tex file not set -> nothing builded -> nothing clean return; } cleantempdir(monitor, project); cleanoutput(monitor, project); monitor.subtask(texlipseplugin.getresourcestring("buildersubtaskcleanmarkers")); this.deletemarkers(project); project.refreshlocal(iproject.depth_infinite, monitor); monitor.done(); }
Comments
Post a Comment