本文正在参加「Java主题月 - Java Debug笔记活动」,详情查看<活动链接>
提问:使Maven将依赖项复制到目标/库
如何将项目的运行时依赖项复制到target / lib文件夹中?
现在,在mvn clean安装之后,目标文件夹仅包含我项目的jar,而不包含任何运行时依赖项。
回答1:
我是这么做的:
<project>
...
<profiles>
<profile>
<id>qa</id>
<build>
<plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
回答2:
mvn install dependency:copy-dependencies
对我有用,它在目标文件夹中创建了依赖项目录。 点个赞再走!
最佳方法取决于您要执行的操作:
如果要将依赖项捆绑到WAR或EAR文件中,则只需将项目的打包类型设置为EAR或WAR。 Maven会将依赖项捆绑到正确的位置。 如果要创建一个包含代码以及所有依赖项的JAR文件,请使用带有jar-with-dependencies描述符的程序集插件。 Maven将使用您的所有类以及来自任何依赖项的类生成一个完整的JAR文件。 如果您想简单地以交互方式将依赖项拉入目标目录,请使用依赖项插件将文件复制到其中。 如果您想为其他类型的处理引入依赖项,则可能需要生成自己的插件。 有一些API可以获取依赖项列表及其在磁盘上的位置。 您将不得不从那里获取依赖。