Fixed file handle leak

git-svn-id: https://svn.apache.org/repos/asf/maven/plugins/trunk@1715110 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/maven/plugin/resources/remote/BundleRemoteResourcesMojo.java b/src/main/java/org/apache/maven/plugin/resources/remote/BundleRemoteResourcesMojo.java
index c6ecc36..e03d35d 100644
--- a/src/main/java/org/apache/maven/plugin/resources/remote/BundleRemoteResourcesMojo.java
+++ b/src/main/java/org/apache/maven/plugin/resources/remote/BundleRemoteResourcesMojo.java
@@ -27,6 +27,7 @@
 import org.apache.maven.plugins.annotations.Parameter;
 import org.codehaus.plexus.util.DirectoryScanner;
 import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.ReaderFactory;
 import org.codehaus.plexus.util.StringUtils;
 
@@ -138,13 +139,15 @@
 
         RemoteResourcesBundleXpp3Writer w = new RemoteResourcesBundleXpp3Writer();
 
+        Writer writer = null;
         try
         {
             File f = new File( outputDirectory, RESOURCES_MANIFEST );
 
-            FileUtils.mkdir( f.getParentFile().getAbsolutePath() );
+            FileUtils.mkdir( f.getParentFile()
+                              .getAbsolutePath() );
 
-            Writer writer = new FileWriter( f );
+            writer = new FileWriter( f );
 
             w.write( writer, remoteResourcesBundle );
         }
@@ -152,5 +155,9 @@
         {
             throw new MojoExecutionException( "Error creating remote resources manifest.", e );
         }
+        finally
+        {
+            IOUtil.close( writer );
+        }
     }
 }