diff --git a/src/main/java/org/apache/sling/maven/slingstart/run/StartMojo.java b/src/main/java/org/apache/sling/maven/slingstart/run/StartMojo.java
index c74939d..af15111 100644
--- a/src/main/java/org/apache/sling/maven/slingstart/run/StartMojo.java
+++ b/src/main/java/org/apache/sling/maven/slingstart/run/StartMojo.java
@@ -402,11 +402,18 @@
 
         // If the current project is a slingstart project, use its JAR artifact
         if (this.project.getPackaging().equals(BuildConstants.PACKAGING_SLINGSTART)) {
-            final File jarFile = project.getArtifact().getFile();
-            if (jarFile.exists()) {
+            File jarFile = project.getArtifact().getFile();
+            if (jarFile != null && jarFile.exists()) {
                 getLog().info("Using launchpad jar being generated as this project's primary artifact: '" +  jarFile + "'!");
                 return jarFile;
             }
+            else {
+                jarFile = new File(project.getBuild().getDirectory(), project.getBuild().getFinalName() + ".jar");
+                if (jarFile.exists()) {
+                    getLog().info("Using launchpad jar being generated as this project's primary artifact: '" +  jarFile + "'!");
+                    return jarFile;
+                }
+            }
         }
 
         // In case there was a provisioning model found but this is not a slingstart project, the JAR might be attached already through goal "package"
