check return value from mkdirs
diff --git a/src/main/java/org/apache/maven/plugins/ear/EarMojo.java b/src/main/java/org/apache/maven/plugins/ear/EarMojo.java
index cd0007e..66689f5 100644
--- a/src/main/java/org/apache/maven/plugins/ear/EarMojo.java
+++ b/src/main/java/org/apache/maven/plugins/ear/EarMojo.java
@@ -453,7 +453,10 @@
                 {

                     getLog().info( "Copying artifact [" + module + "] to [" + module.getUri() + "] (unpacked)" );

                     // Make sure that the destination is a directory to avoid plexus nasty stuff :)

-                    destinationFile.mkdirs();

+                    if ( !destinationFile.mkdirs() )

+                    {

+                        throw new MojoExecutionException( "Error creating " + destinationFile );

+                    }

                     unpack( sourceFile, destinationFile, outdatedResources );

 

                     if ( skinnyWars && module.changeManifestClasspath() )

@@ -695,9 +698,10 @@
         if ( filtering && !isNonFilteredExtension( source.getName() ) )

         {

             // Silly that we have to do this ourselves

-            if ( target.getParentFile() != null && !target.getParentFile().exists() )

+            File parentDirectory = target.getParentFile();

+            if ( parentDirectory != null && !parentDirectory.exists() )

             {

-                target.getParentFile().mkdirs();

+                Files.createDirectories( parentDirectory.toPath() );

             }

 

             mavenFileFilter.copyFile( source, target, true, getFilterWrappers(), encoding );

diff --git a/src/main/java/org/apache/maven/plugins/ear/GenerateApplicationXmlMojo.java b/src/main/java/org/apache/maven/plugins/ear/GenerateApplicationXmlMojo.java
index e39a88e..db14956 100644
--- a/src/main/java/org/apache/maven/plugins/ear/GenerateApplicationXmlMojo.java
+++ b/src/main/java/org/apache/maven/plugins/ear/GenerateApplicationXmlMojo.java
@@ -238,7 +238,10 @@
         File outputDir = new File( generatedDescriptorLocation );

         if ( !outputDir.exists() )

         {

-            outputDir.mkdirs();

+            if ( !outputDir.mkdirs() )

+            {

+                throw new EarPluginException( "Error creating " + outputDir );

+            }

         }

 

         File descriptor = new File( outputDir, "application.xml" );

@@ -253,7 +256,7 @@
     }

 

     /**

-     * Generates the jboss deployment descriptor.

+     * Generates the JBoss deployment descriptor.

      * 

      * @throws EarPluginException if the configuration is invalid

      */

@@ -263,7 +266,10 @@
         File outputDir = new File( generatedDescriptorLocation );

         if ( !outputDir.exists() )

         {

-            outputDir.mkdirs();

+            if ( !outputDir.mkdirs() )

+            {

+                throw new EarPluginException( "Error creating " + outputDir );

+            }

         }

 

         File descriptor = new File( outputDir, "jboss-app.xml" );