2015-05-08 55 views
1

我正在使用下面的配置來複制maven中的系統依賴關係。Maven依賴插件不會將庫複製到war文件

<plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-dependency-plugin</artifactId> 
       <version>2.8</version> 
       <executions> 
        <execution> 
         <id>copy-dependencies</id> 
         <phase>package</phase> 
         <goals> 
          <goal>copy-dependencies</goal> 
         </goals> 
         <configuration> 
          <outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/lib</outputDirectory> 
          <includeScope>system</includeScope> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin> 
<plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <version>2.4</version> 
      </plugin> 

關於「mvn package goal」,奇怪的事情正在發生。

我可以在maven-dependency-plugin中配置的「$ {project.build.directory}/$ {project.build.finalName}/WEB-INF/lib」目標目錄中查看所有系統依賴項。但是這些依賴關係在war文件中缺失。

有人可以分享想法嗎?

+2

你能否提供maven日誌?戰爭打包後可能會執行復制依賴目標? –

+0

maven項目本身的類型是什麼?如何定義依賴關係? – rmalchow

+0

也 - 你爲什麼需要這樣做? – rmalchow

回答

0

嘗試配置maven-war-plugin這樣的:

<plugin> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>2.4</version> 
     <configuration> 
      <packagingIncludes>WEB-INF/lib/*.jar</packagingIncludes> 
     </configuration> 
    </plugin> 

如果沒有幫助,那麼我想的Kristoffer E是正確的:依賴複製之前你的戰爭被打包。在這種情況下,您應該將階段從package更改爲maven-dependency-plugin中的process-sources,以便更早執行。

相關問題