This is an automated email from the ASF dual-hosted git repository.
lkishalmi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-netbeans.git
The following commit(s) were added to refs/heads/master by this push:
new cd48e22 Handle the NPE cases when the default Gradle distribution is
not available.
cd48e22 is described below
commit cd48e225be0ae95fa2e978117369ba8dc5e3574a
Author: Laszlo Kishalmi <[email protected]>
AuthorDate: Wed Jan 30 12:06:47 2019 -0800
Handle the NPE cases when the default Gradle distribution is not available.
---
.../classpath/AbstractGradleScriptClassPath.java | 2 +-
.../gradle/classpath/ScriptClassPathProvider.java | 24 +++++++++++++---------
.../gradle/queries/GradleSourceForBinary.java | 6 ++++--
3 files changed, 19 insertions(+), 13 deletions(-)
diff --git
a/groovy/gradle/src/org/netbeans/modules/gradle/classpath/AbstractGradleScriptClassPath.java
b/groovy/gradle/src/org/netbeans/modules/gradle/classpath/AbstractGradleScriptClassPath.java
index d7124b6..9a7f1d5 100644
---
a/groovy/gradle/src/org/netbeans/modules/gradle/classpath/AbstractGradleScriptClassPath.java
+++
b/groovy/gradle/src/org/netbeans/modules/gradle/classpath/AbstractGradleScriptClassPath.java
@@ -104,7 +104,7 @@ abstract class AbstractGradleScriptClassPath implements
ClassPathImplementation
public final List<? extends PathResourceImplementation> getResources() {
if (resources == null) {
resources = new ArrayList<>();
- if (distDir.isDirectory()) {
+ if ((distDir !=null) && distDir.isDirectory()) {
for (FileObject fo : createPath()) {
resources.add(ClassPathSupport.createResource(fo.toURL()));
}
diff --git
a/groovy/gradle/src/org/netbeans/modules/gradle/classpath/ScriptClassPathProvider.java
b/groovy/gradle/src/org/netbeans/modules/gradle/classpath/ScriptClassPathProvider.java
index aa0d17d..5c4fd75 100644
---
a/groovy/gradle/src/org/netbeans/modules/gradle/classpath/ScriptClassPathProvider.java
+++
b/groovy/gradle/src/org/netbeans/modules/gradle/classpath/ScriptClassPathProvider.java
@@ -42,7 +42,7 @@ import org.openide.util.lookup.ServiceProvider;
public class ScriptClassPathProvider implements ClassPathProvider {
private static final String GRADLE_EXT = "gradle";
-
+
final ClassPath BOOT_CP;
final ClassPath GRADLE_CP;
final ClassPath SOURCE_CP;
@@ -56,7 +56,7 @@ public class ScriptClassPathProvider implements
ClassPathProvider {
}
HashMap<FileObject, ClassPath> cache = new HashMap<>();
-
+
@Override
public ClassPath findClassPath(FileObject fo, String type) {
if ("classpath/html5".equals(type)) {
@@ -72,7 +72,7 @@ public class ScriptClassPathProvider implements
ClassPathProvider {
case ClassPath.BOOT: return BOOT_CP;
case ClassPath.SOURCE: return SOURCE_CP;
case ClassPath.COMPILE: return GRADLE_CP;
- case ClassPath.EXECUTE: return GRADLE_CP;
+ case ClassPath.EXECUTE: return GRADLE_CP;
}
}
return null;
@@ -87,11 +87,13 @@ public class ScriptClassPathProvider implements
ClassPathProvider {
@Override
protected List<FileObject> createPath() {
List<FileObject> ret = new ArrayList<>();
- FileObject srcDir = FileUtil.toFileObject(new File(distDir,
"src"));
- if ((srcDir != null) && srcDir.isFolder()) {
- Enumeration<? extends FileObject> folders =
srcDir.getFolders(false);
- while (folders.hasMoreElements()) {
- ret.add(folders.nextElement());
+ if (distDir != null) {
+ FileObject srcDir = FileUtil.toFileObject(new File(distDir,
"src"));
+ if ((srcDir != null) && srcDir.isFolder()) {
+ Enumeration<? extends FileObject> folders =
srcDir.getFolders(false);
+ while (folders.hasMoreElements()) {
+ ret.add(folders.nextElement());
+ }
}
}
return ret;
@@ -103,8 +105,10 @@ public class ScriptClassPathProvider implements
ClassPathProvider {
@Override
protected List<FileObject> createPath() {
List<FileObject> ret = new ArrayList<>();
- addJars(ret, FileUtil.toFileObject(new File(distDir, "lib")));
- addJars(ret, FileUtil.toFileObject(new File(distDir,
"lib/plugins")));
+ if (distDir != null) {
+ addJars(ret, FileUtil.toFileObject(new File(distDir, "lib")));
+ addJars(ret, FileUtil.toFileObject(new File(distDir,
"lib/plugins")));
+ }
return ret;
}
diff --git
a/groovy/gradle/src/org/netbeans/modules/gradle/queries/GradleSourceForBinary.java
b/groovy/gradle/src/org/netbeans/modules/gradle/queries/GradleSourceForBinary.java
index 5aba787..5be571c 100644
---
a/groovy/gradle/src/org/netbeans/modules/gradle/queries/GradleSourceForBinary.java
+++
b/groovy/gradle/src/org/netbeans/modules/gradle/queries/GradleSourceForBinary.java
@@ -19,6 +19,7 @@
package org.netbeans.modules.gradle.queries;
+import java.io.File;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
@@ -55,8 +56,9 @@ public class GradleSourceForBinary implements
SourceForBinaryQueryImplementation
@Override
public Result findSourceRoots2(URL binaryRoot) {
Res ret = cache.get(binaryRoot);
- if (ret == null) {
- FileObject distDir =
FileUtil.toFileObject(RunUtils.evaluateGradleDistribution(null, false));
+ File dist = RunUtils.evaluateGradleDistribution(null, false);
+ if ((ret == null) && (dist != null)) {
+ FileObject distDir = FileUtil.toFileObject(dist);
FileObject srcDir = distDir == null ? null :
distDir.getFileObject("src"); //NOI18N
if ((srcDir != null) && ("jar".equals(binaryRoot.getProtocol())))
{ //NOI18N
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists