Problem with com.ibm.icu and Bidi in draw2d [message #247529] |
Wed, 25 February 2009 12:08 |
Eclipse User |
|
|
|
Originally posted by: creckord.uni-kassel.de
Hi there,
I have spent the last 1 1/2 days hunting down a problem with com.ibm.icu.Bidi when opening a GEF editor. I always got
java.lang.NoClassDefFoundError: com/ibm/icu/text/Bidi
at org.eclipse.draw2d.text.BidiProcessor.process(BidiProcessor. java:190)
at org.eclipse.draw2d.text.BlockFlow.validate(BlockFlow.java:29 7)
at org.eclipse.draw2d.text.FlowPage.validate(FlowPage.java:149)
at org.eclipse.draw2d.text.FlowPage.getPreferredSize(FlowPage.j ava:86)
....
although an up-to-date com.ibm.icu (3.8.1) was installed. And apparently I was not alone with this problem:
http://www.google.com/search?q=bidi+noclassdeffound+eclipse
Nobody seemed to have a solution, though. Some suggestions included setting up a new workspace (which I did and which helped for a short
while, then the problem reappeared) or deinstalling m2eclipse (which I don't have).
Finally, I took the time debugging the apparent classloader problem, and it got me (I think) to the bottom of this meany: As of
https://bugs.eclipse.org/bugs/show_bug.cgi?id=134789 draw2d depends on ICU by imported package only.
So if there is more than one plugin (or more than one version) we get a problem. Bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=251612
already fixed the version problem.
But in my case it was something different: Somehow the Buckminster headless plugins managed to sneak into my eclipse setup and brought
com.ibm.icu_base with them, which also exports a com.ibm.icu package (and has a matching version, too), however without the Bidi class...
So now I'm wondering where to file a bug report for this? GEF for using the package import instead of a bundle? Buckminster for including
icu_base? P2 for not recognizing a conflict between icu and icu_base or for stopping looking at the first bundle exporting a required package?
Best regards,
Carsten
|
|
|
Powered by
FUDForum. Page generated in 0.03563 seconds