Created attachment 1033363 [details]
Eclipse log file
Description of problem:
When Scala-IDE is installed all Scala projects show compilation errors, The attached log shows a NullPointerException when calling:
trying to debug the problem, I checked the source of printBase64Binary and noticed that the lines for that method aren't near 435 on the OpenJDK sources. This made me thing another implementation is packaged and loaded by one of the Eclipse classloaders. I found eclipse-jgit containing javax.xml.bind_2.0.0.v20080604-1500.jar and that one is the one being used. After removing that jar fromthe dropin directory, Scala-IDE was able to compile projects without errors.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Install Scala-IDE from http://scala-ide.org/
2. Start Eclipse and create a new Scala project
3. Add a new Scala class to the project like:
case object Test
Compilation errors on the project, Eclipse log file with the exception (see attached log)
Compilation should be successful
A lot of time has passed since I packaged Eclipse plugins for Fedora, so things changed a lot. I don't see manual replacement of jars with links to dependent jars. I didn't find where the javax.xml.bind_2.0.0.v20080604-1500.jar is pulled.
OpenJDK 8 already include that implementation, to use that specific implementation look like is not needed, or at least to be isolated to only that plugin and not make it public to other plugins.
eclipse-jgit in Fedora 22 and newer has been upgraded to version 4.1.0 and no longer contains a symlink to the "javax.xml.bind" bundle
This hopefully fixes your problem -- please re-open if this is not the case.
There is still /usr/share/eclipse/dropins/egit-egit/eclipse/plugins/javax.xml.bind_2.0.0.v20080604-1500.jar on eclipse-egit but it doesn't affect Scala IDE plugin.
1) dnf reinstalling eclipse-egit (restoring the other removed file) and updating eclipse-jgit.
2) eclipse -clean
3) Project -> Clean All projects,
No compilation errors because of DatatypeConverter.printBase64Binary()