我正在尝试下载tomcat zip工件并将其解压缩到名为tomcat的文件夹中。 我得到的是tomcat / apache-tomcat-7.0.19 / 我怎样才能摆脱恼人的中间目录?
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>unpack-tomcat</id>
<phase>process-sources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.apache</groupId>
<artifactId>tomcat</artifactId>
<version>7.0.19-win64</version>
<type>zip</type>
<overWrite>false</overWrite>
<outputDirectory>tomcat</outputDirectory>
<excludes>webapps/**</excludes>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
答案 0 :(得分:5)
也许有更多的“mavenish”方式来实现我的建议:)但使用maven ant插件可能是适合您情况的解决方法:
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<phase>package</phase>
<configuration>
<target>
<move file = "tomcat/apache-tomcat-7.0.19/*"
tofile = "tomcat" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<execution>
<phase>package</phase>
<configuration>
<target>
<delete dir = "tomcat/apache-tomcat-7.0.19"/>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
答案 1 :(得分:2)
maven unpack with flat path
http://pulkitsinghal.blogspot.com/2011/04/jetspeed-finally-unpack-plugin-with.html:
绝对没有办法(我知道这篇博文的写作) 让这个maven插件吐出扁平结构。
所以一个好的选择是使用jetspeed-unpack-maven-plugin 允许用户指定
<flat>true</flat>
作为其中的一部分 configuration以便在没有负担的情况下获得所需的文件 具有从包含的工件的根的相对路径 好。
Docs声明此插件还能够将压缩的maven工件内的任意相对路径解压缩到特定的目标文件夹。
答案 2 :(得分:-2)
使用unpack-depencencies目标并将useSubDirectoryPerArtifact设置为false。