diff --git a/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrDeploy.java b/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrDeploy.java
index acfbbbc..4d51fde 100644
--- a/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrDeploy.java
+++ b/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrDeploy.java
@@ -277,10 +277,15 @@
 
     private void updateRemoteBundleMetadata( Artifact artifact, ObrUpdate update ) throws MojoExecutionException
     {
-        if ( !"bundle".equals( artifact.getType() ) || null == artifact.getFile() || artifact.getFile().isDirectory() )
+        if ( !"bundle".equals( artifact.getType() ) )
         {
             return;
         }
+        else if ( null == artifact.getFile() || artifact.getFile().isDirectory() )
+        {
+            getLog().error( "No artifact found, try \"mvn install bundle:deploy\"" );
+            return;
+        }
 
         URI bundleJar = ObrUtils.getArtifactURI( localRepository, artifact );
 
diff --git a/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrInstall.java b/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrInstall.java
index 7d2dd11..7749b00 100644
--- a/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrInstall.java
+++ b/bundleplugin/src/main/java/org/apache/felix/obrplugin/ObrInstall.java
@@ -156,10 +156,15 @@
 
     private void updateLocalBundleMetadata( Artifact artifact, ObrUpdate update ) throws MojoExecutionException
     {
-        if ( !"bundle".equals( artifact.getType() ) || null == artifact.getFile() || artifact.getFile().isDirectory() )
+        if ( !"bundle".equals( artifact.getType() ) )
         {
             return;
         }
+        else if ( null == artifact.getFile() || artifact.getFile().isDirectory() )
+        {
+            getLog().error( "No artifact found, try \"mvn install bundle:install\"" );
+            return;
+        }
 
         URI bundleJar = ObrUtils.getArtifactURI( localRepository, artifact );
 
