You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by jl...@apache.org on 2018/09/24 19:04:23 UTC

[incubator-netbeans] branch master updated (d714490 -> cfdd1ed)

This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git.


    from d714490  Merge pull request #888 from arusinha/review-javaee.beanvalidation
     new 06a8ee6  OpenJDK project needs to express the dependency on Javac API.
     new b961e13  Fix fake Java classes so that source level is not downgraded.
     new d37e825  Limit directories that are scanned for module for the OpenJDK project
     new e78e7c2  MODULE_BOOT_PATH must be empty for OpenJDK modules.
     new 427eb66  Read output in chunks, as that is more efficient, and to workaround a bug in ErrWriter.write(int).
     new f7f663f  Removing a JDK10 workaround for unattributable anonymous classes.
     new cfdd1ed  Determine source level as the highest RELEASE_ number in SourceVersion.

The 7 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 java/java.openjdk.project/build.xml                |  2 +
 java/java.openjdk.project/nbproject/project.xml    |  8 ++++
 .../java/openjdk/jtreg/ActionProviderImpl.java     |  7 ++--
 .../openjdk/project/ClassPathProviderImpl.java     | 17 ++++-----
 .../java/openjdk/project/ModuleDescription.java    | 10 ++++-
 .../java/openjdk/project/SourceLevelQueryImpl.java | 38 +++++++++++++------
 .../openjdk/project/SourceLevelQueryImplTest.java  | 44 +++++++++++++++++++---
 .../org/netbeans/lib/nbjavac/services/NBAttr.java  | 16 --------
 8 files changed, 94 insertions(+), 48 deletions(-)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[incubator-netbeans] 04/07: MODULE_BOOT_PATH must be empty for OpenJDK modules.

Posted by jl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git

commit e78e7c2653f28d56c4cf3416d9d87d63b9882269
Author: Jan Lahoda <jl...@netbeans.org>
AuthorDate: Sun Sep 23 07:58:51 2018 +0200

    MODULE_BOOT_PATH must be empty for OpenJDK modules.
---
 .../java/openjdk/project/ClassPathProviderImpl.java     | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ClassPathProviderImpl.java b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ClassPathProviderImpl.java
index 3e3a1cf..5319740 100644
--- a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ClassPathProviderImpl.java
+++ b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ClassPathProviderImpl.java
@@ -39,6 +39,7 @@ import javax.swing.event.ChangeListener;
 
 import org.netbeans.api.java.classpath.ClassPath;
 import org.netbeans.api.java.classpath.GlobalPathRegistry;
+import org.netbeans.api.java.classpath.JavaClassPathConstants;
 import org.netbeans.api.project.libraries.Library;
 import org.netbeans.api.project.libraries.LibraryManager;
 import org.netbeans.modules.java.openjdk.project.JDKProject.Root;
@@ -69,6 +70,7 @@ public class ClassPathProviderImpl implements ClassPathProvider {
     };
     
     private final ClassPath bootCP;
+    private final ClassPath moduleBootCP;
     private final ClassPath compileCP;
     private final ClassPath moduleCompileCP;
     private final ClassPath sourceCP;
@@ -77,6 +79,7 @@ public class ClassPathProviderImpl implements ClassPathProvider {
 
     public ClassPathProviderImpl(JDKProject project) {
         bootCP = ClassPath.EMPTY;
+        moduleBootCP = ClassPath.EMPTY;
         
         File fakeJdk = InstalledFileLocator.getDefault().locate("modules/ext/fakeJdkClasses.zip", "org.netbeans.modules.java.openjdk.project", false);
         URL fakeJdkURL = null;
@@ -187,22 +190,18 @@ public class ClassPathProviderImpl implements ClassPathProvider {
         return FileUtil.getArchiveRoot(projectDir.toURI().resolve("fake-target.jar").toURL());
     }
 
-    /**
-     * Copied from JavaClassPathConstants, to avoid depending on a new version of it.
-     */
-    private static final String MODULE_COMPILE_PATH = "modules/compile";
-    private static final String MODULE_CLASS_PATH = "modules/classpath";
-
     @Override
     public ClassPath findClassPath(FileObject file, String type) {
         if (sourceCP.findOwnerRoot(file) != null) {
             if (ClassPath.BOOT.equals(type)) {
                 return bootCP;
+            } else if (JavaClassPathConstants.MODULE_BOOT_PATH.equals(type)) {
+                return bootCP;
             } else if (ClassPath.COMPILE.equals(type)) {
                 return compileCP;
             } else if (ClassPath.SOURCE.equals(type)) {
                 return sourceCP;
-            } else if (MODULE_COMPILE_PATH.equals(type)) {
+            } else if (JavaClassPathConstants.MODULE_COMPILE_PATH.equals(type)) {
                 return moduleCompileCP;
             }
         } else {
@@ -211,8 +210,8 @@ public class ClassPathProviderImpl implements ClassPathProvider {
             if (ClassPath.BOOT.equals(type)) {
                 return ClassPath.EMPTY;
             } else if (ClassPath.COMPILE.equals(type) ||
-                       MODULE_COMPILE_PATH.equals(type) ||
-                       MODULE_CLASS_PATH.equals(type)) {
+                       JavaClassPathConstants.MODULE_COMPILE_PATH.equals(type) ||
+                       JavaClassPathConstants.MODULE_CLASS_PATH.equals(type)) {
                 return testsCompileCP;
             }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[incubator-netbeans] 07/07: Determine source level as the highest RELEASE_ number in SourceVersion.

Posted by jl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git

commit cfdd1edcc924f499c97c725d880450861433b0fd
Author: Jan Lahoda <jl...@netbeans.org>
AuthorDate: Sun Sep 23 10:19:00 2018 +0200

    Determine source level as the highest RELEASE_ number in SourceVersion.
---
 .../java/openjdk/project/SourceLevelQueryImpl.java | 38 +++++++++++++------
 .../openjdk/project/SourceLevelQueryImplTest.java  | 44 +++++++++++++++++++---
 2 files changed, 64 insertions(+), 18 deletions(-)

diff --git a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImpl.java b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImpl.java
index 42f7f77..b5f0592 100644
--- a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImpl.java
+++ b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImpl.java
@@ -25,6 +25,9 @@ import java.util.logging.Level;
 import java.util.logging.Logger;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
+import org.netbeans.api.java.lexer.JavaTokenId;
+import org.netbeans.api.lexer.TokenHierarchy;
+import org.netbeans.api.lexer.TokenSequence;
 
 import org.netbeans.spi.java.queries.SourceLevelQueryImplementation;
 import org.openide.filesystems.FileObject;
@@ -36,32 +39,43 @@ import org.openide.filesystems.FileObject;
 public class SourceLevelQueryImpl implements SourceLevelQueryImplementation  {
 
     private static final Logger LOG = Logger.getLogger(SourceLevelQueryImpl.class.getName());
-    private static final String DEFAULT_SOURCE_LEVEL = "1.9";
+    private static final int DEFAULT_SOURCE_LEVEL = 11;
     private static final Pattern JDK_PATTERN = Pattern.compile("jdk([0-9]+)");
 
     private final String sourceLevel;
 
     public SourceLevelQueryImpl(FileObject jdkRoot) {
-        FileObject jcheckConf = jdkRoot.getFileObject(".jcheck/conf");
-        String sl = DEFAULT_SOURCE_LEVEL;
+        FileObject sourceVersion = jdkRoot.getFileObject("src/java.compiler/share/classes/javax/lang/model/SourceVersion.java");
+        int sl = DEFAULT_SOURCE_LEVEL;
 
-        if (jcheckConf != null) {
-            Properties props = new Properties();
+        if (sourceVersion == null) {
+            sourceVersion = jdkRoot.getFileObject("langtools/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java");
+        }
+        if (sourceVersion != null) {
+            try {
+                TokenHierarchy<String> th =
+                        TokenHierarchy.create(sourceVersion.asText(), JavaTokenId.language());
+                TokenSequence<?> seq = th.tokenSequence();
 
-            try (InputStream in = jcheckConf.getInputStream()) {
-                props.load(in);
-                String project = props.getProperty("project", "jdk9");
-                Matcher m = JDK_PATTERN.matcher(project);
+                while (seq.moveNext()) {
+                    if (seq.token().id() == JavaTokenId.IDENTIFIER) {
+                        String ident = seq.token().text().toString();
 
-                if (m.find()) {
-                    sl = m.group(1);
+                        if (ident.startsWith("RELEASE_")) {
+                            try {
+                                sl = Math.max(sl, Integer.parseInt(ident.substring("RELEASE_".length())));
+                            } catch (NumberFormatException ex) {
+                                //ignore
+                            }
+                        }
+                    }
                 }
             } catch (IOException ex) {
                 LOG.log(Level.FINE, null, ex);
             }
         }
 
-        this.sourceLevel = sl;
+        this.sourceLevel = "" + sl;
     }
 
 
diff --git a/java/java.openjdk.project/test/unit/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImplTest.java b/java/java.openjdk.project/test/unit/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImplTest.java
index c8f3b40..40e5ead 100644
--- a/java/java.openjdk.project/test/unit/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImplTest.java
+++ b/java/java.openjdk.project/test/unit/src/org/netbeans/modules/java/openjdk/project/SourceLevelQueryImplTest.java
@@ -64,31 +64,63 @@ public class SourceLevelQueryImplTest extends NbTestCase {
         assertEquals("1.8", SourceLevelQuery.getSourceLevel(jlObject));
     }
     
-    public void testModuleInfoProject() throws IOException {
+    public void testModuleInfoOldLayout() throws IOException {
         FileObject javaBase = FileUtil.createFolder(root, "jdk/src/java.base");
         FileObject jlObject = FileUtil.createData(javaBase, "share/classes/java/lang/Object.java");
         copyString2File(jlObject, "");
         copyString2File(FileUtil.createData(javaBase, "share/classes/module-info.java"), "module java.base {}");
-        copyString2File(FileUtil.createData(root, ".jcheck/conf"), "project=jdk3\n");
+        copyString2File(FileUtil.createData(root, "langtools/src/java.compiler/share/classes/module-info.java"), "module java.compiler {}");
+        copyString2File(FileUtil.createData(root, "langtools/src/java.compiler/share/classes/javax/lang/model/SourceVersion.java"), "RELEASE_3 RELEASE_12");
 
         Project javaBaseProject = FileOwnerQuery.getOwner(javaBase);
 
         assertNotNull(javaBaseProject);
 
-        assertEquals("1.3", SourceLevelQuery.getSourceLevel(jlObject));
+        assertEquals("12", SourceLevelQuery.getSourceLevel(jlObject));
     }
 
-    public void testNoJCheck() throws IOException {
-        FileObject javaBase = FileUtil.createFolder(root, "jdk/src/java.base");
+    public void testModuleInfoNewLayout() throws IOException {
+        FileObject javaBase = FileUtil.createFolder(root, "src/java.base");
+        FileObject jlObject = FileUtil.createData(javaBase, "share/classes/java/lang/Object.java");
+        copyString2File(jlObject, "");
+        copyString2File(FileUtil.createData(javaBase, "share/classes/module-info.java"), "module java.base {}");
+        copyString2File(FileUtil.createData(root, "src/java.compiler/share/classes/module-info.java"), "module java.compiler {}");
+        copyString2File(FileUtil.createData(root, "src/java.compiler/share/classes/javax/lang/model/SourceVersion.java"), "RELEASE_3 RELEASE_12");
+
+        Project javaBaseProject = FileOwnerQuery.getOwner(javaBase);
+
+        assertNotNull(javaBaseProject);
+
+        assertEquals("12", SourceLevelQuery.getSourceLevel(jlObject));
+    }
+
+    public void testNoSourceVersion() throws IOException {
+        FileObject javaBase = FileUtil.createFolder(root, "src/java.base");
+        FileObject jlObject = FileUtil.createData(javaBase, "share/classes/java/lang/Object.java");
+        copyString2File(jlObject, "");
+        copyString2File(FileUtil.createData(javaBase, "share/classes/module-info.java"), "module java.base {}");
+        copyString2File(FileUtil.createData(root, "src/java.compiler/share/classes/module-info.java"), "module java.compiler {}");
+
+        Project javaBaseProject = FileOwnerQuery.getOwner(javaBase);
+
+        assertNotNull(javaBaseProject);
+
+        assertEquals("11", SourceLevelQuery.getSourceLevel(jlObject));
+    }
+
+    public void testOldSourceVersion() throws IOException {
+        FileObject javaBase = FileUtil.createFolder(root, "src/java.base");
         FileObject jlObject = FileUtil.createData(javaBase, "share/classes/java/lang/Object.java");
         copyString2File(jlObject, "");
         copyString2File(FileUtil.createData(javaBase, "share/classes/module-info.java"), "module java.base {}");
+        copyString2File(FileUtil.createData(root, "src/java.compiler/share/classes/module-info.java"), "module java.compiler {}");
+        copyString2File(FileUtil.createData(root, "src/java.compiler/share/classes/javax/lang/model/SourceVersion.java"), "RELEASE_3");
 
         Project javaBaseProject = FileOwnerQuery.getOwner(javaBase);
 
         assertNotNull(javaBaseProject);
 
-        assertEquals("9", SourceLevelQuery.getSourceLevel(jlObject));
+        assertEquals("11", SourceLevelQuery.getSourceLevel(jlObject));
     }
 
     private void copyString2File(FileObject file, String content) throws IOException {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[incubator-netbeans] 06/07: Removing a JDK10 workaround for unattributable anonymous classes.

Posted by jl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git

commit f7f663f42c016e7cfe4af35a4c509c2c82594670
Author: Jan Lahoda <jl...@netbeans.org>
AuthorDate: Sun Sep 23 10:17:20 2018 +0200

    Removing a JDK10 workaround for unattributable anonymous classes.
---
 .../src/org/netbeans/lib/nbjavac/services/NBAttr.java    | 16 ----------------
 1 file changed, 16 deletions(-)

diff --git a/java/lib.nbjavac/src/org/netbeans/lib/nbjavac/services/NBAttr.java b/java/lib.nbjavac/src/org/netbeans/lib/nbjavac/services/NBAttr.java
index f693de8..07d94a4 100644
--- a/java/lib.nbjavac/src/org/netbeans/lib/nbjavac/services/NBAttr.java
+++ b/java/lib.nbjavac/src/org/netbeans/lib/nbjavac/services/NBAttr.java
@@ -73,22 +73,6 @@ public class NBAttr extends Attr {
         super.visitBlock(tree);
     }
 
-    @Override
-    public void visitNewClass(JCNewClass tree) {
-        super.visitNewClass(tree);
-        if (tree.def != null && tree.def.sym == null) {
-            try {
-                Field envField = Attr.class.getDeclaredField("env");
-                envField.setAccessible(true);
-                Env<AttrContext> env = (Env<AttrContext>) envField.get(this);
-                env = env.dup(tree);
-                attribStat(tree.def, env);
-            } catch (NoSuchFieldException | SecurityException | IllegalArgumentException | IllegalAccessException ex) {
-                Logger.getLogger(NBAttr.class.getName()).log(Level.FINE, null, ex);
-            }
-        }
-    }
-
     private boolean fullyAttribute;
     private Env<AttrContext> fullyAttributeResult;
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[incubator-netbeans] 05/07: Read output in chunks, as that is more efficient, and to workaround a bug in ErrWriter.write(int).

Posted by jl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git

commit 427eb66a32131ace8875a3aa8c35749b206cce54
Author: Jan Lahoda <jl...@netbeans.org>
AuthorDate: Sun Sep 23 07:59:32 2018 +0200

    Read output in chunks, as that is more efficient, and to workaround a bug in ErrWriter.write(int).
---
 .../netbeans/modules/java/openjdk/jtreg/ActionProviderImpl.java    | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/jtreg/ActionProviderImpl.java b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/jtreg/ActionProviderImpl.java
index 8dd78e1..413eadd 100644
--- a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/jtreg/ActionProviderImpl.java
+++ b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/jtreg/ActionProviderImpl.java
@@ -774,10 +774,11 @@ public class ActionProviderImpl implements ActionProvider {
         @Override
         public void run() {
             try {
+                char[] buf = new char[1024];
                 int read;
-                
-                while ((read = in.read()) != (-1)) {
-                    out.write(read);
+
+                while ((read = in.read(buf)) != (-1)) {
+                    out.write(buf, 0, read);
                 }
             } catch (IOException ex) {
                 Exceptions.printStackTrace(ex);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[incubator-netbeans] 02/07: Fix fake Java classes so that source level is not downgraded.

Posted by jl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git

commit b961e13e074380fedf71b167a4632943a613a1a3
Author: Jan Lahoda <jl...@netbeans.org>
AuthorDate: Tue Sep 11 06:12:28 2018 +0200

    Fix fake Java classes so that source level is not downgraded.
---
 java/java.openjdk.project/build.xml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/java/java.openjdk.project/build.xml b/java/java.openjdk.project/build.xml
index 54339ac..4d00b4b 100644
--- a/java/java.openjdk.project/build.xml
+++ b/java/java.openjdk.project/build.xml
@@ -22,11 +22,13 @@
     <import file="../../nbbuild/templates/projectized.xml"/>
     <target name="compile" depends="projectized-common.compile">
         <mkdir dir="${build.dir}/fakeJdkClasses/java/lang" />
+        <mkdir dir="${build.dir}/fakeJdkClasses/java/lang/invoke" />
         <mkdir dir="${build.dir}/fakeJdkClasses/java/util/stream" />
         <mkdir dir="${build.dir}/fakeJdkClasses/java/util/zip" />
         <touch file="${build.dir}/fakeJdkClasses/java/lang/AssertionError.class" />
         <touch file="${build.dir}/fakeJdkClasses/java/lang/StringBuilder.class" />
         <touch file="${build.dir}/fakeJdkClasses/java/lang/AutoCloseable.class" />
+        <touch file="${build.dir}/fakeJdkClasses/java/lang/invoke/LambdaMetafactory.class" />
         <touch file="${build.dir}/fakeJdkClasses/java/util/stream/Streams.class" />
         <touch file="${build.dir}/fakeJdkClasses/java/util/zip/CRC32C.class" />
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[incubator-netbeans] 01/07: OpenJDK project needs to express the dependency on Javac API.

Posted by jl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git

commit 06a8ee685cbb567159c06877483643dbd2d79b45
Author: Jan Lahoda <jl...@netbeans.org>
AuthorDate: Tue Sep 11 06:31:55 2018 +0200

    OpenJDK project needs to express the dependency on Javac API.
---
 java/java.openjdk.project/nbproject/project.xml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/java/java.openjdk.project/nbproject/project.xml b/java/java.openjdk.project/nbproject/project.xml
index 8e17a2f..fc83334 100644
--- a/java/java.openjdk.project/nbproject/project.xml
+++ b/java/java.openjdk.project/nbproject/project.xml
@@ -78,6 +78,14 @@
                     </run-dependency>
                 </dependency>
                 <dependency>
+                    <code-name-base>org.netbeans.libs.javacapi</code-name-base>
+                    <build-prerequisite/>
+                    <compile-dependency/>
+                    <run-dependency>
+                        <specification-version>8.24</specification-version>
+                    </run-dependency>
+                </dependency>
+                <dependency>
                     <code-name-base>org.netbeans.modules.java.lexer</code-name-base>
                     <build-prerequisite/>
                     <compile-dependency/>


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[incubator-netbeans] 03/07: Limit directories that are scanned for module for the OpenJDK project

Posted by jl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jlahoda pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git

commit d37e82540c2e259822fd35004c9ef532e76fb13a
Author: Jan Lahoda <jl...@netbeans.org>
AuthorDate: Sat Sep 22 07:01:05 2018 +0200

    Limit directories that are scanned for module for the OpenJDK project
---
 .../modules/java/openjdk/project/ModuleDescription.java        | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ModuleDescription.java b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ModuleDescription.java
index 2cb9b2c..c4b8011 100644
--- a/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ModuleDescription.java
+++ b/java/java.openjdk.project/src/org/netbeans/modules/java/openjdk/project/ModuleDescription.java
@@ -128,9 +128,11 @@ public class ModuleDescription {
         if (projectDirectory.getFileObject("../../src/java.base/share/classes/module-info.java") != null &&
             projectDirectory.getFileObject("../../src/java.compiler/share/classes/module-info.java") != null)
             return Pair.of(projectDirectory.getFileObject("../.."), Pair.of(true, false));
-        if (projectDirectory.getFileObject("../../../modules.xml") != null || projectDirectory.getFileObject("../../../jdk/src/java.base/share/classes/module-info.java") != null)
+        if (projectDirectory.getFileObject("../../../modules.xml") != null ||
+            (projectDirectory.getFileObject("../../../jdk/src/java.base/share/classes/module-info.java") != null && projectDirectory.getFileObject("../../../langtools/src/java.compiler/share/classes/module-info.java") != null))
             return Pair.of(projectDirectory.getFileObject("../../.."), Pair.of(false, false));
-        if (projectDirectory.getFileObject("../../../../modules.xml") != null || projectDirectory.getFileObject("../../../../jdk/src/java.base/share/classes/module-info.java") != null)
+        if (projectDirectory.getFileObject("../../../../modules.xml") != null ||
+            (projectDirectory.getFileObject("../../../../jdk/src/java.base/share/classes/module-info.java") != null && projectDirectory.getFileObject("../../../langtools/src/java.compiler/share/classes/module-info.java") != null))
             return Pair.of(projectDirectory.getFileObject("../../../.."), Pair.of(false, false));
 
         return null;
@@ -235,6 +237,10 @@ public class ModuleDescription {
                 continue; //do not look inside test folders
             }
 
+            if (current.getParent().getNameExt().equals("test") && current.getFileObject("TEST.ROOT") != null) {
+                continue; //do not look inside test folders
+            }
+
             todo.addAll(Arrays.asList(current.getChildren()));
         }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists