Open danieleb2000 opened 3 years ago
Screenshot 1.1.25 (not working anymore):
Perhaps there's some dependency issue that prevents the jlatexmath plugin to be activated/used with 1.1.25.
Everything has been installed from scratch. Some hints about how to investigate the dependency issue?
Strange... when launched from my dev. eclipse (both Luna and 2020-6) the PlantUML view shows it as expected, while the PlantUML Svg view throws an exception:
formula=R(t) = e^(-lambda*t) Latex={R}{\left({t}\right)}={e}^{{-\lambda\cdot{t}}} java.lang.ClassNotFoundException: org.apache.batik.dom.GenericDOMImplementation cannot be found by net.sourceforge.plantuml.lib_1.2021.3 at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:516) at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:171) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:264) at net.sourceforge.plantuml.math.ConverterSvg.getSvg(ConverterSvg.java:84) at net.sourceforge.plantuml.math.LatexBuilder.getSvg(LatexBuilder.java:74) at net.sourceforge.plantuml.math.AsciiMath.getSvg(AsciiMath.java:99)
By me also with normal diagram it is not correctly shown. Maybe some needed dependency is not installed?
Error still present in 1.1.26. Root cause understood?
I agree, I don't seem to have understood the underlying problem... Which Eclipse version do you run on?
Issue persistent on both the following Eclipse versions:
Eclipse IDE for C/C++ Developers 2019-06 (4.12.0) Eclipse IDE for C/C++ Developers (includes Incubating components) Version: 2021-03 (4.19.0)
I need stack traces to be able to debug this, do you find that in the Error Log view?
I need stack traces to be able to debug this, do you find that in the Error Log view?
What should I search for? I have only 3 entries in the Error Log, none of them is related to Plantuml stuff.
I need stack traces to be able to debug this, do you find that in the Error Log view?
I got the following 3 errors in the Error Log view:
0) org.eclipse.egit.ui: Warning: The environment variable HOME is not set. The following directory will be used to store the Git An exception stack trace is not available.
1) org.eclipse.ui.ide: Not properly disposed SWT resource
java.lang.Error: SWT Resource was not properly disposed
at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172)
at org.eclipse.swt.graphics.Resource.
2) org.eclipse.ui.ide: Not properly disposed SWT resource
java.lang.Error: SWT Resource was not properly disposed
at org.eclipse.swt.graphics.Resource.initNonDisposeTracking(Resource.java:172)
at org.eclipse.swt.graphics.Resource.
I was able to trigger this error, but I'm not sure how to solve it. I'll try to find some workaround, but can't guarantee anything as class path problems are difficult to debug.
@hallvard what is the cause of the error? what is the difference with 1.1.24 which was working good?
The problem is that the plantuml library uses reflection to get hold of the GenericDOMImplementation class, and in this case doesn't find it. Such implicit dependencies are difficult to handle... I haven't found out how to satisfy this dependency, yet.
One generical question: it is not possible just to integrate the official plantuml.jar exactly as it is and then develop around it a wrapper? Other plugins work like that (for example, the plugin for MsWord or AsciiDoc).
@hallvard If there is something we can do on the core plantuml library side that may help to solve this issue, please tell us.
The main problem here is that the dependency on GenericDOMImplementation is implicit and not provided by the plantuml.jar itself. I think I can make my wrapper provide it by adding an explicit dependency on some other bundle with that implementation, or I may be able to add it manually to the wrapper. I don't fully understand the class loading magic within eclipse, so cannot promise it will just work. If plantuml contained the GenericDOMImplementation class itself, the problem would go away, but perhaps there's some licensing issue?
Some news about this issue?
Screenshot 1.1.24 (it used to work):