Closed GoogleCodeExporter closed 9 years ago
One more information I need , which version are you using ?
It looks like our Nightly build , just want to double check.
That seems RJR's container resolver is not stable enough,
I saw some user complains similar issues before ,
but I can't reproduce it in my local , so it's hard to trace it for me.
ok ,I will dig more to find the details or try to use another implementation
for it.
Original comment by tonylovejava
on 29 Jun 2011 at 5:56
Original comment by tonylovejava
on 29 Jun 2011 at 5:56
Btw this is the view when container resolver working well.
http://screencast.com/t/waIP012YJ
I will mark this issue as top priority.
Original comment by tonylovejava
on 29 Jun 2011 at 6:03
ok , I got the version you use from your jars in attachment.
Original comment by tonylovejava
on 29 Jun 2011 at 6:11
I refine some logic for container resolver by "guessing",
but actually not sure if we get this issue fixed or not.
I have published a newer nightly version for RJR core 20110630,
would you mind to help me install and test it ?
Also great thank to your bug report. ;)
Original comment by tonylovejava
on 29 Jun 2011 at 7:43
(Remove nightly tag, since it's more like a bug in 1.2.2 )
Original comment by tonylovejava
on 29 Jun 2011 at 7:44
Thanks very much for the prompt response!
When I click 'New' to create a new Run Jetty Run launch config, I get the
following error:
java.lang.IllegalArgumentException: Path for project must have only one segment.
at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
at
org.eclipse.core.internal.resources.WorkspaceRoot.getProject(WorkspaceRoot.java:
183)
at runjettyrun.RunJettyRunTab.initializeFrom(RunJettyRunTab.java:748)
at
org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup.initializeFrom(Abstract
LaunchConfigurationTabGroup.java:86)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupWr
apper.initializeFrom(LaunchConfigurationTabGroupWrapper.java:194)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.displayInstanceTabs(LaunchConfigurationTabGroupViewer.java:751)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer$8.run(LaunchConfigurationTabGroupViewer.java:623)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.inputChanged(LaunchConfigurationTabGroupViewer.java:640)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.setInput0(LaunchConfigurationTabGroupViewer.java:602)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.setInput(LaunchConfigurationTabGroupViewer.java:578)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.ha
ndleLaunchConfigurationSelectionChanged(LaunchConfigurationsDialog.java:940)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog$3.
selectionChanged(LaunchConfigurationsDialog.java:559)
at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:867)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at
org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredVi
ewer.java:865)
at
org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:17
00)
at org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1139)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView.handl
eConfigurationAdded(LaunchConfigurationView.java:283)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView.acces
s$1(LaunchConfigurationView.java:272)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView$2.run
(LaunchConfigurationView.java:261)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
at org.eclipse.jface.window.Window.open(Window.java:801)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.op
en(LaunchConfigurationsDialog.java:1134)
at org.eclipse.debug.ui.DebugUITools$1.run(DebugUITools.java:398)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at
org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITo
ols.java:406)
at
org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITo
ols.java:340)
at
org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run(OpenLaunchDialogAction.j
ava:81)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at
org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionCont
ributionItem.java:584)
at
org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.
java:501)
at
org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContribution
Item.java:411)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java
:115)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Ecli
pseAppLauncher.java:110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLau
ncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
This results in all the properties in the RJR tab being blank and
uninitialised. Essentially, I am now not able to create new RJR launch
configurations.
Previously created launch configs still run okay.
Original comment by dale.l...@gmail.com
on 29 Jun 2011 at 9:31
(Sorry - if that last comment wasn't clear, I meant this is what happens after
installing the new updated nightly build)
Original comment by dale.l...@gmail.com
on 29 Jun 2011 at 9:38
Would you mind to provide me the full project name for verifying this issue?
That seems a project name issue,and it's strange,
since we didn't change this implementation and it looks more like a new bug.
But basically we count on Eclipse JDT on this part,
I could ignore the exception , but if the project name is invalid ,
you will still meet error in the JavaRuntime part.
Let's check if the project name is reasonable or not.
Original comment by tonylovejava
on 30 Jun 2011 at 1:01
I did some code review and found that I couldn't find any possibility on
Project Name issue you meet.
My suggestion is
1.check your project name first
2.deleted the wrong Run Configuration and try to create it again
Original comment by tonylovejava
on 30 Jun 2011 at 1:15
Thanks for the reply.
To try and eliminate any weird config or state I might have gotten myself into,
I did the following:
1) Start eclipse with new, clean empty workspace in a path with no spaces in it
(C:\Temp\newworkspace)
2) Create a new Java project, called "this.is.a.test.project"
3) Run -> Run Configurations...
4) Click on 'Jetty Webapp'
5) Click on 'New'
6) The same error occurred
Looking in the error log, I see two errors
Error 1
Thu Jun 30 09:18:38 BST 2011
Runtime component type org.mortbay.jetty.serveradaptor.runtime has not been
defined. It is used in plugin org.mortbay.jetty.serveradaptor.
Error 2 (this is when I clicked New)
Thu Jun 30 09:21:20 BST 2011
Problems occurred when invoking code from plug-in: "org.eclipse.jface".
java.lang.IllegalArgumentException: Path for project must have only one segment.
at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
at
org.eclipse.core.internal.resources.WorkspaceRoot.getProject(WorkspaceRoot.java:
183)
at runjettyrun.RunJettyRunTab.initializeFrom(RunJettyRunTab.java:748)
at
org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup.initializeFrom(Abstract
LaunchConfigurationTabGroup.java:86)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupWr
apper.initializeFrom(LaunchConfigurationTabGroupWrapper.java:194)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.displayInstanceTabs(LaunchConfigurationTabGroupViewer.java:751)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer$8.run(LaunchConfigurationTabGroupViewer.java:623)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.inputChanged(LaunchConfigurationTabGroupViewer.java:640)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.setInput0(LaunchConfigurationTabGroupViewer.java:602)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupVi
ewer.setInput(LaunchConfigurationTabGroupViewer.java:578)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.ha
ndleLaunchConfigurationSelectionChanged(LaunchConfigurationsDialog.java:940)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog$3.
selectionChanged(LaunchConfigurationsDialog.java:559)
at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:867)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at
org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredVi
ewer.java:865)
at
org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:17
00)
at org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1139)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView.handl
eConfigurationAdded(LaunchConfigurationView.java:283)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView.acces
s$1(LaunchConfigurationView.java:272)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView$2.run
(LaunchConfigurationView.java:261)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
at org.eclipse.jface.window.Window.open(Window.java:801)
at
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.op
en(LaunchConfigurationsDialog.java:1134)
at org.eclipse.debug.ui.DebugUITools$1.run(DebugUITools.java:398)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at
org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITo
ols.java:406)
at
org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITo
ols.java:340)
at
org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run(OpenLaunchDialogAction.j
ava:81)
at
org.eclipse.debug.ui.actions.OpenLaunchDialogAction.runWithEvent(OpenLaunchDialo
gAction.java:89)
at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:241)
at
org.eclipse.ui.internal.WWinPluginAction.runWithEvent(WWinPluginAction.java:229)
at
org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionCont
ributionItem.java:584)
at
org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.
java:501)
at
org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContribution
Item.java:411)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at
org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java
:115)
at
org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(Ecli
pseAppLauncher.java:110)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLau
ncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
Original comment by dale.l...@gmail.com
on 30 Jun 2011 at 8:31
Here's my test case
1) Start eclipse with new worksapce
2) Create a new Java project, called "this.is.a.test.project"
3) Run -> Run Configurations...
4) Click on 'Jetty Webapp'
5) Click on 'New'
Here's a record for how I testing it and verified the version.
http://screencast.com/t/Nri8Bgwi
I didn't see anything show up in your case .
My OS is win7 64bit ,Eclipse Helios.
I will try to prepare a more clean Eclipse to test this later ,
to check if there's anything we missed .
Original comment by tonylovejava
on 30 Jun 2011 at 8:50
Argh, you've got to love unreproducible bugs. :-)
I tried again with another clean workspace and now can't reproduce what
happened in comment 11 myself! It still happens in my old workspaces, but not
in new ones I create, so I must've somehow borked those workspaces. I'm sorry -
let's call that a red herring and go back to the original issue.
I'm still seeing the classpath problem behaviour.
1) Start eclipse in another new workspace C:\temp\newworkspace7
2) Create a new Dynamic Web project called testproject, with target runtime
Jetty v7.2
3) Right-click on new project, and go to Run Configurations
4) Click on Jetty Webapp
5) Click on New
6) Checked the Classpath tab - screenshot attached
7) Click on Run
Exception in thread "main" java.lang.NoClassDefFoundError: runjettyrun.Bootstrap
Caused by: java.lang.ClassNotFoundException: runjettyrun.Bootstrap
at java.net.URLClassLoader.findClass(URLClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:653)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:346)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
Original comment by dale.l...@gmail.com
on 30 Jun 2011 at 9:22
Attachments:
Using the Debug view, I can see that this is the full command that runs,
resulting in the above NoClassDefFoundError
"C:\Program Files (x86)\IBM\Java60\jre\bin\javaw.exe" -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:49517 -Drjrcontext=/testproject -Drjrwebapp=\"C:\temp\newworkspace7\testproject\WebContent\" -Drjrport=8080 -Drjrsslport=8443 -Drjrkeystore=C:\Users\Dale\.keystore -Drjrkeypassword=changeit -Drjrpassword=changeit -Drjrscanintervalseconds=5 -Drjrenablescanner=true -Drjrenablessl=false -Drjrneedclientauth=false -Drjrparentloaderpriority=true -DrjrenbaleJNDI=false -Drjrclasspath=file://C:\temp\newworkspace7\.metadata\.plugins\runjettyrun\testproject.classpath -DrjrResourceMapping= -Dfile.encoding=Cp1252 runjettyrun.Bootstrap
I can see that the classpath is being set in
C:\temp\newworkspace7\.metadata\.plugins\runjettyrun\testproject.classpath
The contents of that file is:
C:\temp\newworkspace7\testproject\WebContent\WEB-INF\classes;C:\Program
Files\jetty\lib\annotations\javax.annotation_1.0.0.v20100513-0750.jar;C:\Program
Files\jetty\lib\annotations\org.objectweb.asm_3.1.0.v200803061910.jar;C:\Program
Files\jetty\lib\jetty-ajp-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-annotations-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-client-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-continuation-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-deploy-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-http-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-io-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-jmx-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-jndi-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-plus-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-policy-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-rewrite-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-security-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-server-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-servlet-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-servlets-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-util-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-webapp-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-websocket-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jetty-xml-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jndi\javax.activation_1.1.0.v201005080500.jar;C:\Program
Files\jetty\lib\jndi\javax.mail.glassfish_1.4.1.v201005082020.jar;C:\Program
Files\jetty\lib\jsp\com.sun.el_1.0.0.v201004190952.jar;C:\Program
Files\jetty\lib\jsp\ecj-3.6.jar;C:\Program
Files\jetty\lib\jsp\javax.el_2.1.0.v201004190952.jar;C:\Program
Files\jetty\lib\jsp\javax.servlet.jsp.jstl_1.2.0.v201004190952.jar;C:\Program
Files\jetty\lib\jsp\javax.servlet.jsp_2.1.0.v201004190952.jar;C:\Program
Files\jetty\lib\jsp\jetty-jsp-2.1-7.2.2.v20101205.jar;C:\Program
Files\jetty\lib\jsp\org.apache.jasper.glassfish_2.1.0.v201007080150.jar;C:\Progr
am
Files\jetty\lib\jsp\org.apache.taglibs.standard.glassfish_1.2.0.v201004190952.ja
r;C:\Program
Files\jetty\lib\jta\javax.transaction_1.1.1.v201004190952.jar;C:\Program
Files\jetty\lib\servlet-api-2.5.jar
It looks like stuff like run-jetty-run-bootstrap jars are still not being
included.
Original comment by dale.l...@gmail.com
on 30 Jun 2011 at 9:26
Ok ,I believe you found the root cause , that's a good job!
I will trace it later and see if how we could handle it well, thanks.
Let us reopen this issue first. ;)
Original comment by tonylovejava
on 30 Jun 2011 at 10:27
[deleted comment]
I guess it might related to Eclipse version ,
we use the OSGi way , getting bundle entry from plug-in root.
It's working in my environment(Eclipse 3.6),
but it seems it's not working properly in your case,
Anyway , I will try to find a more stable way to handle it / try to reproduce
it as possible.
btw , in your classpath you found,
there's another issue for server runtime will conflict with RJR bundled one.
You could reference to Issue 54 , we do some enhance and it will be solved in
next nightly/official version.
Original comment by tonylovejava
on 1 Jul 2011 at 3:11
Just tried install Eclipse 3.7 and still can't reproduce it.
Am going to check if there's another way to get the libs...
Original comment by tonylovejava
on 1 Jul 2011 at 4:22
I refine the path in r182 , r185 and move it to nightly 0701 version.
And I add logger on it , at least if RJR didn't find any jetty jar files ,
it will complain and give us more reasonable messages.
Like this case.
http://screencast.com/t/HvRNBmWhK9A
And we could fine more information to debug,
if you don't mind , please help me to test it one more time.
Thanks a lot.
Original comment by tonylovejava
on 1 Jul 2011 at 8:06
It now throws the following exception when trying to create or load a RJR
launch config:
java.lang.NullPointerException
at runjettyrun.utils.ProjectUtil.getLibs(ProjectUtil.java:137)
at runjettyrun.container.Jetty6PackageProvider.getPackage(Jetty6PackageProvider.java:20)
at runjettyrun.Plugin.getDefaultPackages(Plugin.java:211)
at runjettyrun.utils.RunJettyRunLaunchConfigurationUtil.loadPackage(RunJettyRunLaunchConfigurationUtil.java:178)
at runjettyrun.container.RunJettyRunContainerClasspathEntry.getRuntimeClasspathEntries(RunJettyRunContainerClasspathEntry.java:289)
at org.eclipse.jdt.internal.debug.ui.classpath.ClasspathEntry.getChildren(ClasspathEntry.java:190)
at org.eclipse.jdt.internal.debug.ui.classpath.ClasspathContentProvider.getChildren(ClasspathContentProvider.java:159)
at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren(AbstractTreeViewer.java:1354)
at org.eclipse.jface.viewers.TreeViewer.getRawChildren(TreeViewer.java:391)
at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren(StructuredViewer.java:896)
at org.eclipse.jface.viewers.AbstractTreeViewer.getSortedChildren(AbstractTreeViewer.java:601)
at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:801)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:778)
at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:644)
at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1714)
at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1724)
at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpandToLevel(AbstractTreeViewer.java:1724)
at org.eclipse.jface.viewers.AbstractTreeViewer.expandToLevel(AbstractTreeViewer.java:1056)
at org.eclipse.jface.viewers.AbstractTreeViewer.expandToLevel(AbstractTreeViewer.java:1037)
at runjettyrun.JettyLaunchConfigurationTabGroup$1.initializeFrom(JettyLaunchConfigurationTabGroup.java:41)
at org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup.initializeFrom(AbstractLaunchConfigurationTabGroup.java:86)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupWrapper.initializeFrom(LaunchConfigurationTabGroupWrapper.java:194)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.displayInstanceTabs(LaunchConfigurationTabGroupViewer.java:751)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer$8.run(LaunchConfigurationTabGroupViewer.java:623)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.inputChanged(LaunchConfigurationTabGroupViewer.java:640)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.setInput0(LaunchConfigurationTabGroupViewer.java:602)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.setInput(LaunchConfigurationTabGroupViewer.java:578)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.handleLaunchConfigurationSelectionChanged(LaunchConfigurationsDialog.java:940)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog$3.selectionChanged(LaunchConfigurationsDialog.java:559)
at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:867)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:865)
at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1700)
at org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1139)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView.handleConfigurationAdded(LaunchConfigurationView.java:283)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView.access$1(LaunchConfigurationView.java:272)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationView$2.run(LaunchConfigurationView.java:261)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
at org.eclipse.jface.window.Window.open(Window.java:801)
at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.open(LaunchConfigurationsDialog.java:1134)
at org.eclipse.debug.ui.DebugUITools$1.run(DebugUITools.java:398)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:406)
at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:340)
at org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run(OpenLaunchDialogAction.java:81)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
at org.eclipse.equinox.launcher.Main.main(Main.java:1384)
Original comment by dale.l...@gmail.com
on 1 Jul 2011 at 9:01
OK , we are getting close...
Original comment by tonylovejava
on 1 Jul 2011 at 9:29
I move a newer nightly version to 20110704 ,
but I still can't get more details on this one.
But at least I fix the NPE, if you don't mind ,
you could install this plug-in again ,
and we will see what's the exactly path it get in your environment.
Or maybe you could send your eclipse to me if possible.
(I could create a ftp with a account for you to upload it)
Or at least , I need your Eclipse version , that might help to reproduce it.
Currently what I know is that we use Bundle to get entries in a plug-in
directory ,
but unfortunately in your case , it got a wrong path.
I have no idea about the reason and still looking for if there's another way to
handle it.
I am sorry but it's really not a easy one for me,will keep trying to fix it. ;)
Original comment by tonylovejava
on 4 Jul 2011 at 3:11
I found the reason now and I could reproduce it today, will commit and fix it
later.
The reason is that OSGi required to use specific API (FileLocator.toFileURL())
and then it will extract it as a cache in file system when you access it from
the API.
Since I was not handling it well when I implementing Jetty7/Jetty8 support,
reference to
http://stackoverflow.com/questions/3741205/get-a-file-location-in-eclipse-plugin
Anyway , thanks you to point it out, let's check if it will get resolved after
next nightly build.
(I will build it few hours later. )
Original comment by tonylovejava
on 6 Jul 2011 at 10:19
Fix since 2011/7/7 , commit in r222,
and it's already in nightly 20110707 version.
Original comment by tonylovejava
on 7 Jul 2011 at 1:05
that's fantastic - many thanks for all your time in bringing this to resolution!
Original comment by dale.l...@gmail.com
on 7 Jul 2011 at 8:14
Original issue reported on code.google.com by
dale.l...@gmail.com
on 29 Jun 2011 at 1:55Attachments: