Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] Can't get CDT checked out in Eclipse to run

Jeff,

I am bringing in cdt-dev on this as Marc-Andre and Doug were involved in the earlier work on Java 11 and it's effect on freemarker/template plug-in. If there is still an open issue I we may need a bug report to continue the discussion in.

All, 

Jeff has been having trouble running CDT with Java 11 in the dev environment related to jaxb. If anyone has any input here I would be most grateful. If there is something that needs to be changed, we have only a couple days to resolve it without requiring a respin of 2018-12.

As it turns out, Ubuntu 18.04's Java 11 package is not really Java 11, so my earlier testing may have been fruitless. 

Thanks, 
Jonah 

On Mon, 10 Dec 2018, 17:31 Jonah Graham <jonah@xxxxxxxxxxxxxxxx wrote:
It turns out I am not using Java 11, or not exactly Java 11, despite what the package says:

 $ which java
/usr/lib/jvm/java-11-openjdk-amd64/bin/java

$ java -version
openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4, mixed mode)

$ apt-file search -x /usr/lib/jvm/java-11-openjdk-amd64/bin/java$
openjdk-11-jre-headless: /usr/lib/jvm/java-11-openjdk-amd64/bin/java

So I need to get a real Java 11 and try again :-(

Jonah


~~~
Jonah Graham
Kichwa Coders Ltd.
www.kichwacoders.com


On Mon, 10 Dec 2018 at 16:53, Jeff Johnston <jjohnstn@xxxxxxxxxx> wrote:
Ok, thanks.  Roland said there is more to the workaround than simply bringing in com.sun.xml.bind.  He posted to
PTP regarding this workaround, but on the call, Alex isn't sure if both CDT and PTP using the work-around will cause
issues.


-- Jeff J.

On Mon, Dec 10, 2018 at 11:46 AM Jonah Graham <jonah@xxxxxxxxxxxxxxxx> wrote:
I'll see if I can reproduce with a clean dev workspace. Might not be for a few hours. 

Jonah

On Mon, 10 Dec 2018, 16:45 Jeff Johnston <jjohnstn@xxxxxxxxxx wrote:
Sorry for the delay, I am in our weekly status call.

JREs has both 1,8 Openjdk and 1.11 Openjdk.  I have specifically chosen 1.11 and have also ensured that 1.8 execution and 1.11 execution point to it.

-- Jeff J.

On Mon, Dec 10, 2018 at 10:51 AM Jonah Graham <jonah@xxxxxxxxxxxxxxxx> wrote:
What does Installed JREs have? I wonder if something is getting confused if effectively a mismatch of versions is happening. If the Installed JREs (and the corresponding entry in the launch config) point to Java 11 fully and you are still having a problem then I can try creating a new dev workspace on my machine using Java 11 from the beginning and see if that works for me.

Jonah


~~~
Jonah Graham
Kichwa Coders Ltd.
www.kichwacoders.com


On Mon, 10 Dec 2018 at 15:39, Jeff Johnston <jjohnstn@xxxxxxxxxx> wrote:
Hi Jonah,

Here is the stack trace I get:
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
    at org.eclipse.cdt.make.internal.ui.wizards.NewMakefileProjectWizard.getGenerator(NewMakefileProjectWizard.java:72)
    at org.eclipse.tools.templates.ui.TemplateWizard.performFinish(TemplateWizard.java:75)
    at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:772)
    at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:411)
    at org.eclipse.jface.dialogs.Dialog.lambda$0(Dialog.java:619)
    at org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:81)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:249)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5686)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1370)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4940)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4518)
    at org.eclipse.jface.window.Window.runEventLoop(Window.java:818)
    at org.eclipse.jface.window.Window.open(Window.java:794)
    at org.eclipse.ui.internal.actions.NewWizardShortcutAction.run(NewWizardShortcutAction.java:133)
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:565)
    at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:397)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5686)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1370)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4940)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4518)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1170)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1059)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
    at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:667)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:597)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:656)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:592)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1498)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1471)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException cannot be found by org.eclipse.tools.templates.freemarker_1.0.0.201811131700
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:508)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:419)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:411)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 45 more

I verified that the FMGenerator has the fix in my parent Eclipse and that my parent can find JAXBException.  Interestingly, it points to both the Java 8 version in the JRE and
the loaded version (since I switched to Java 11 using alternatives).

I also tried deleting my bundle_pool from the parent Eclipse and restarting.  Still the same error in the child Eclipse (note that I cleared the workspace for the child Eclipse each time).

-- Jeff J.


On Mon, Dec 10, 2018 at 7:50 AM Jonah Graham <jonah@xxxxxxxxxxxxxxxx> wrote:
Hi Jeff,

I was able to with both OpenJDK8 and 11 (on Ubuntu 18.04) create new experimental Makefile project and I could see it stepped through FMGenerator.

The problem sounds like you have tools.templates without https://git.eclipse.org/r/#/c/131831/ however the version number in your stack trace indicates you have the right version. Can you provide the rest of the stack trace you have. As far as I can see, the only use of JAXBException is in FMGenerator. Does PDE find JAXBException? Are there any other errors in your log and does PDE validate the platform properly (in the lanuch config)?

You can try to blow away workspace/.metadata/.plugins/org.eclipse.pde.core/.bundle_pool/ so that PDE re-downloads the whole target.

Please let me know how you get on. I am sure there is more I can suggest, but I am at a loss now for what to do.

Jonah






~~~
Jonah Graham
Kichwa Coders Ltd.
www.kichwacoders.com


On Sun, 9 Dec 2018 at 21:06, Jonah Graham <jonah@xxxxxxxxxxxxxxxx> wrote:
Hi Jeff,

I can't look at this until the morning. I sure as hell hope I have been having it running as expected, but I have been playing around in so many version combinations. The error you are referring to does sound like the recently fixed up stuff for Java 11.

I'll make sure it is all right before I release RC2 tomorrow, and if it is working for me I'll let you know what I am doing so we can identify any differences. 

Thanks, 
Jonah 


On Sun, 9 Dec 2018, 19:53 Jeff Johnston <jjohnstn@xxxxxxxxxx wrote:
Hi Jonah,

I cannot get a chld Eclipse to run properly when started with CDT git checked out.  I keep getting the following when I hit the Finish button for a CDT New Makefile project

Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException cannot be found by org.eclipse.tools.templates.freemarker_1.0.0.201811131700
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:508)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:419)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:411)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 45 more

I have selected cdt.target as my workspace target, loaded and unloaded it different times.  It keeps geting this error.  I see you made a change but do you ever test with a child Eclipse running?

-- Jeff J.

Back to the top