Maven Dependency Plugin不将库复制到war文件

时间:2015-05-08 19:24:22

标签: java maven

我正在使用以下配置来复制maven中的系统依赖项。

<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包目标”,奇怪的事情正在发生。

我可以在maven-dependency-plugin中配置的“$ {project.build.directory} / $ {project.build.finalName} / WEB-INF / lib”目标目录中看到所有系统依赖项。但是war文件中缺少这些依赖项。

有人可以分享想法吗?

1 个答案:

答案 0 :(得分:1)

尝试像这样配置maven-war-plugin

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

如果没有帮助,那么我猜Kristoffer E是对的:在复制依赖项之前打包你的war。在这种情况下,您应该将package中的相位从process-sources更改为maven-dependency-plugin,以便更早执行。