Because of the directory aux used in jshell, one cannot open the langtools Netbeans project on Windows.
The fix is as follows:
diff --git a/make/netbeans/langtools/nbproject/project.xml b/make/netbeans/langtools/nbproject/project.xml
--- a/make/netbeans/langtools/nbproject/project.xml
+++ b/make/netbeans/langtools/nbproject/project.xml
@@ -520,7 +520,7 @@
<package-root>${root}/build/bootstrap/jdk.jshell/gensrc</package-root>
<package-root>${root}/../jdk/src/jdk.internal.le/share/classes</package-root>
<package-root>${root}/../jdk/src/jdk.jdi/share/classes</package-root>
- <classpath mode="compile">${root}/build/java.compiler/classes:${root}/build/jdk.compiler/classes:${root}/build/jdk.internal.le/aux:${root}/build/jdk.jdi/aux:${root}/build/jdk.internal.le/classes:${root}/build/jdk.jdi/classes</classpath>
+ <classpath mode="compile">${root}/build/java.compiler/classes:${root}/build/jdk.compiler/classes:${root}/build/jdk.internal.le/faux:${root}/build/jdk.jdi/faux:${root}/build/jdk.internal.le/classes:${root}/build/jdk.jdi/classes</classpath>
<built-to>${root}/build/jdk.jshell/classes</built-to>
<source-level>1.8</source-level>
</compilation-unit>
The fix is simple but not sure of the implications on jshell.
Here is the Netbeans log:
WARNING [org.netbeans.modules.project.ui.OpenProjectList]
java.lang.IllegalArgumentException: file:////./aux/ is not a valid classpath entry; it cannot contain current or parent dir reference.
at org.netbeans.modules.java.classpath.SimplePathResourceImplementation.verify(SimplePathResourceImplementation.java:120)
at org.netbeans.modules.java.classpath.SimplePathResourceImplementation.verify(SimplePathResourceImplementation.java:68)
at org.netbeans.modules.java.classpath.SimplePathResourceImplementation.<init>(SimplePathResourceImplementation.java:131)
at org.netbeans.spi.java.classpath.support.ClassPathSupport.createResource(ClassPathSupport.java:77)
at org.netbeans.modules.java.freeform.Classpaths$MutableClassPathImplementation.initRoots(Classpaths.java:629)
at org.netbeans.modules.java.freeform.Classpaths$MutableClassPathImplementation.<init>(Classpaths.java:575)
at org.netbeans.modules.java.freeform.Classpaths.getPath(Classpaths.java:405)
at org.netbeans.modules.java.freeform.Classpaths.openedImpl(Classpaths.java:294)
at org.netbeans.modules.java.freeform.Classpaths.access$100(Classpaths.java:126)
at org.netbeans.modules.java.freeform.Classpaths$2.run(Classpaths.java:248)
at org.netbeans.modules.java.freeform.Classpaths$2.run(Classpaths.java:246)
at org.netbeans.modules.openide.util.DefaultMutexImplementation.readAccess(DefaultMutexImplementation.java:252)
at org.openide.util.Mutex.readAccess(Mutex.java:218)
at org.netbeans.modules.java.freeform.Classpaths.opened(Classpaths.java:246)
at org.netbeans.modules.java.freeform.LookupProviderImpl$OpenHook.projectOpened(LookupProviderImpl.java:126)
at org.netbeans.spi.project.ui.ProjectOpenedHook$1.projectOpened(ProjectOpenedHook.java:85)
[catch] at org.netbeans.modules.project.ui.OpenProjectList.notifyOpened(OpenProjectList.java:1298)
at org.netbeans.modules.project.ui.OpenProjectList.doOpenProject(OpenProjectList.java:1379)
at org.netbeans.modules.project.ui.OpenProjectList.open(OpenProjectList.java:823)
at org.netbeans.modules.project.ui.OpenProjectList$6.run(OpenProjectList.java:675)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058)
The fix is as follows:
diff --git a/make/netbeans/langtools/nbproject/project.xml b/make/netbeans/langtools/nbproject/project.xml
--- a/make/netbeans/langtools/nbproject/project.xml
+++ b/make/netbeans/langtools/nbproject/project.xml
@@ -520,7 +520,7 @@
<package-root>${root}/build/bootstrap/jdk.jshell/gensrc</package-root>
<package-root>${root}/../jdk/src/jdk.internal.le/share/classes</package-root>
<package-root>${root}/../jdk/src/jdk.jdi/share/classes</package-root>
- <classpath mode="compile">${root}/build/java.compiler/classes:${root}/build/jdk.compiler/classes:${root}/build/jdk.internal.le/aux:${root}/build/jdk.jdi/aux:${root}/build/jdk.internal.le/classes:${root}/build/jdk.jdi/classes</classpath>
+ <classpath mode="compile">${root}/build/java.compiler/classes:${root}/build/jdk.compiler/classes:${root}/build/jdk.internal.le/faux:${root}/build/jdk.jdi/faux:${root}/build/jdk.internal.le/classes:${root}/build/jdk.jdi/classes</classpath>
<built-to>${root}/build/jdk.jshell/classes</built-to>
<source-level>1.8</source-level>
</compilation-unit>
The fix is simple but not sure of the implications on jshell.
Here is the Netbeans log:
WARNING [org.netbeans.modules.project.ui.OpenProjectList]
java.lang.IllegalArgumentException: file:////./aux/ is not a valid classpath entry; it cannot contain current or parent dir reference.
at org.netbeans.modules.java.classpath.SimplePathResourceImplementation.verify(SimplePathResourceImplementation.java:120)
at org.netbeans.modules.java.classpath.SimplePathResourceImplementation.verify(SimplePathResourceImplementation.java:68)
at org.netbeans.modules.java.classpath.SimplePathResourceImplementation.<init>(SimplePathResourceImplementation.java:131)
at org.netbeans.spi.java.classpath.support.ClassPathSupport.createResource(ClassPathSupport.java:77)
at org.netbeans.modules.java.freeform.Classpaths$MutableClassPathImplementation.initRoots(Classpaths.java:629)
at org.netbeans.modules.java.freeform.Classpaths$MutableClassPathImplementation.<init>(Classpaths.java:575)
at org.netbeans.modules.java.freeform.Classpaths.getPath(Classpaths.java:405)
at org.netbeans.modules.java.freeform.Classpaths.openedImpl(Classpaths.java:294)
at org.netbeans.modules.java.freeform.Classpaths.access$100(Classpaths.java:126)
at org.netbeans.modules.java.freeform.Classpaths$2.run(Classpaths.java:248)
at org.netbeans.modules.java.freeform.Classpaths$2.run(Classpaths.java:246)
at org.netbeans.modules.openide.util.DefaultMutexImplementation.readAccess(DefaultMutexImplementation.java:252)
at org.openide.util.Mutex.readAccess(Mutex.java:218)
at org.netbeans.modules.java.freeform.Classpaths.opened(Classpaths.java:246)
at org.netbeans.modules.java.freeform.LookupProviderImpl$OpenHook.projectOpened(LookupProviderImpl.java:126)
at org.netbeans.spi.project.ui.ProjectOpenedHook$1.projectOpened(ProjectOpenedHook.java:85)
[catch] at org.netbeans.modules.project.ui.OpenProjectList.notifyOpened(OpenProjectList.java:1298)
at org.netbeans.modules.project.ui.OpenProjectList.doOpenProject(OpenProjectList.java:1379)
at org.netbeans.modules.project.ui.OpenProjectList.open(OpenProjectList.java:823)
at org.netbeans.modules.project.ui.OpenProjectList$6.run(OpenProjectList.java:675)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058)