TOMEE-1447 adding applicationCopyFolder config to be able to extract in a temp folder and not in ~/.m2/repository
Project: http://git-wip-us.apache.org/repos/asf/tomee/repo Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/7ef7671b Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/7ef7671b Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/7ef7671b Branch: refs/heads/develop Commit: 7ef7671b7a28b3fefbca5965ebf290d02f47657f Parents: c1e4740 Author: Romain Manni-Bucau <[email protected]> Authored: Tue Nov 18 14:51:53 2014 +0100 Committer: Romain Manni-Bucau <[email protected]> Committed: Tue Nov 18 14:51:53 2014 +0100 ---------------------------------------------------------------------- .../openejb/maven/plugins/TomEEEmbeddedMojo.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tomee/blob/7ef7671b/maven/tomee-embedded-maven-plugin/src/main/java/org/apache/openejb/maven/plugins/TomEEEmbeddedMojo.java ---------------------------------------------------------------------- diff --git a/maven/tomee-embedded-maven-plugin/src/main/java/org/apache/openejb/maven/plugins/TomEEEmbeddedMojo.java b/maven/tomee-embedded-maven-plugin/src/main/java/org/apache/openejb/maven/plugins/TomEEEmbeddedMojo.java index 11a4c98..78d8e5f 100644 --- a/maven/tomee-embedded-maven-plugin/src/main/java/org/apache/openejb/maven/plugins/TomEEEmbeddedMojo.java +++ b/maven/tomee-embedded-maven-plugin/src/main/java/org/apache/openejb/maven/plugins/TomEEEmbeddedMojo.java @@ -32,6 +32,7 @@ import org.apache.maven.plugins.annotations.ResolutionScope; import org.apache.maven.project.MavenProject; import org.apache.openejb.core.ParentClassLoaderFinder; import org.apache.openejb.core.ProvidedClassLoaderFinder; +import org.apache.openejb.loader.IO; import org.apache.openejb.loader.SystemInstance; import org.apache.openejb.maven.util.MavenLogStreamFactory; import org.apache.openejb.util.JuliLogStreamFactory; @@ -168,6 +169,9 @@ public class TomEEEmbeddedMojo extends AbstractMojo { @Parameter(property = "tomee-plugin.skip-current-project", defaultValue = "false") private boolean skipCurrentProject; + @Parameter(property = "tomee-plugin.application-copy", defaultValue = "${project.build.directory}/tomee-embedded/applications") + private File applicationCopyFolder; + @Override public void execute() throws MojoExecutionException, MojoFailureException { if (!classpathAsWar && "pom".equals(packaging)) { @@ -233,8 +237,14 @@ public class TomEEEmbeddedMojo extends AbstractMojo { final String renameStr = "?name="; final int nameIndex = app.lastIndexOf(renameStr); final String coordinates = nameIndex > 0 ? app.substring(0, nameIndex) : app; - final File file = mvnToFile(coordinates); - container.deploy(nameIndex > 0 ? app.substring(nameIndex + renameStr.length() + 1) : file.getName(), file); + File file = mvnToFile(coordinates); + final String name = nameIndex > 0 ? app.substring(nameIndex + renameStr.length() + 1) : file.getName(); + if (applicationCopyFolder != null) { + final File copy = new File(applicationCopyFolder, name); + IO.copy(file, copy); + file = copy; + } + container.deploy(name, file); } }
