2013-04-26 83 views
1

如何使用maven依赖项插件unpack-dependecies目标解包为绝对路径,即不是相对于项目树中生成的目标文件夹内部?例如,我想在/ usr/local /目录下解压下面两个依赖关系的工件:*如何“maven解压缩依赖关系”到绝对路径?

<dependencies> 
    <dependency> 
     <groupId>package.org.apache.apr</groupId> 
     <artifactId>apr-bin</artifactId> 
     <version>1.4.6</version> 
     <classifier>bin</classifier> 
     <type>tar.gz</type> 
    </dependency> 
    <dependency> 
     <groupId>package.org.apache.apr-util</groupId> 
     <artifactId>apr-util-bin</artifactId> 
     <version>1.4.1</version> 
     <classifier>bin</classifier> 
     <type>tar.gz</type> 
    </dependency> 
</dependencies> 

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-dependency-plugin</artifactId> 
      <version>2.7</version> 
      <executions> 
       <!-- Unpack header files and libraries for build --> 
       <execution> 
        <id>apr-bin-unpack</id> 
        <phase>generate-sources</phase> 
        <goals> 
         <goal>unpack-dependencies</goal> 
        </goals> 
        <configuration> 
         <excludeTransitive>true</excludeTransitive> 
         <!-- This element does NOT make a difference --> 
         <outputdirectory>/usr/local</outputdirectory> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 
+0

您使用的是哪个版本的依赖项插件? – user944849 2013-04-26 16:23:46

+0

因为我没有指定,所以它最迟默认为2.1。谢谢! – 2013-04-26 16:45:20

+0

请使用2.7版本的最新版本再试一次。有什么区别? – user944849 2013-04-26 16:48:09

回答

6

检查大小写。它应该是:

<outputDirectory>/usr/local</outputDirectory> 
+1

就是这样!可悲的是,maven不会始终抱怨无法识别的标签。 – 2013-04-26 17:00:55