Community
Participate
Working Groups
Reading the JRockit forum, I realize that when we set the bootclasspath in the StandardVMRunner we might get failures in the evaluation tests. We might want to set only the classpath of the VM instead of the classpath and the bootclasspath. I will attach a patch.
Created attachment 43142 [details] Proposed fix With this patch the tests are still ok with standard VMS like Sun or IBM.
I confirm that JRockit can fail some evaluation tests without this fix. Jerome, please double-check the patch. I would suggest it for 3.2.1.
If the fix is good, I would fix it for 3.2, so JRockit can qualify in time.
This needs a comment with at least a reference to this bug explaining why the bootClasspath() is put on the regular classpath(). Also has this change been tested on Mac and Linux ?
So far I tested it on Windows. I can run the test on Linux, but it is more difficult to run the tests on Mac.
If you prefer I can make this change only for JRockit by defining a new VM launcher.
On Mac the VM launcher used is not a StandardVMLauncher. It is a MacVMLauncher. So this change has no impact on Mac.
(In reply to comment #7) > On Mac the VM launcher used is not a StandardVMLauncher. It is a MacVMLauncher. > So this change has no impact on Mac. > And there is no JRockit on Mac ?
No, not yet. Linux and Windows only so far.
The debug evaluation tests and all evaluation tests are disabled on Linux. So this leaves only Windows as the tested platform. And the patch works fine on Windows. We could however differ it to 3.2.1 since they have not been reported as problems. I got failures running the EvaluationTests which are private tests for now.
I confirm that not fixing this is causing grief to the tests in the package org.eclipse.jdt.core.tests.eval. I suggest to add a new VM launcher for JRockit VM that would not set the bootclasspath but instead set the classpath only. This would not impact the existing Sun VMs and would allow JRockit to pass these tests.
This doesn't seem to be enough. Now I get: java.lang.SecurityException: Prohibited package name: java.util.zip I'll investigate what can be causing this error.
Ok, the failures I got seems to come from the usage of the java.util.zip package as a context for some evaluation test. JRockit VM doesn't like this and issue a SecurityException. Two tests are concerned by this: org.eclipse.jdt.core.tests.eval.CodeSnippetTest.testPackage and: org.eclipse.jdt.core.tests.eval.NegativeCodeSnippetTest.testChangePackage. See http://forums.bea.com/bea/thread.jspa?forumID=2037&threadID=600008522&messageID=600017934#600017934 on the bea forums. I don't understand the rational behind this error. We might simply want to exclude these two tests when running them with JRockit for now.
Created attachment 43393 [details] Proposed fix This patch adds a new VM launcher for JRockit VMs. It also disables the two tests mentionned before when the running VM is JRockit.
Released for 3.3M6.
Verified for 3.3 M6 using build I20070321-0010