Skip to content

Commit 8dac835

Browse files
testforstephenmickaelistria
authored andcommittedMay 21, 2024
Avoid NPE when using external folder as the build directory
1 parent 4d415a0 commit 8dac835

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed
 

‎org.eclipse.m2e.core/src/org/eclipse/m2e/core/project/configurator/AbstractLifecycleMapping.java

+10-6
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import org.eclipse.core.resources.IFolder;
2727
import org.eclipse.core.resources.IResourceDelta;
2828
import org.eclipse.core.runtime.CoreException;
29+
import org.eclipse.core.runtime.IPath;
2930
import org.eclipse.core.runtime.IProgressMonitor;
3031
import org.eclipse.core.runtime.OperationCanceledException;
3132
import org.eclipse.core.runtime.Status;
@@ -81,12 +82,15 @@ public void configure(ProjectConfigurationRequest request, IProgressMonitor mon)
8182
if(build != null) {
8283
String directory = build.getDirectory();
8384
if(directory != null) {
84-
IContainer container = projectFacade.getProject().getFolder(projectFacade.getProjectRelativePath(directory));
85-
if(container != null) {
86-
if(!container.exists() && container instanceof IFolder folder) {
87-
M2EUtils.createFolder(folder, true, monitor.newChild(1));
88-
} else {
89-
container.setDerived(true, monitor.newChild(1));
85+
IPath targetPath = projectFacade.getProjectRelativePath(directory);
86+
if (targetPath != null) {
87+
IContainer container = projectFacade.getProject().getFolder(targetPath);
88+
if(container != null) {
89+
if(!container.exists() && container instanceof IFolder folder) {
90+
M2EUtils.createFolder(folder, true, monitor.newChild(1));
91+
} else {
92+
container.setDerived(true, monitor.newChild(1));
93+
}
9094
}
9195
}
9296
}

0 commit comments

Comments
 (0)