6

我正在尝试对一个项目进行去mavenize。

有没有办法将此 maven 项目所需的所有 jar 提取到一个文件夹中?

(我是 Maven 的新手,所以请;提供的说明应该是虚拟模式)谢谢!

;-)

4

3 回答 3

7

您可以使用Maven 依赖插件的dependency:copy-dependencies目标来实现这一点。

实际上,只需mvn dependency:dependencies在您的 maven 项目上运行,您应该会在dependencies文件夹下找到一个子target文件夹,其中包含所有依赖项,包括传递的依赖项。

于 2012-04-24T08:51:27.397 回答
3

看看maven-assembly-plugin它的jar-with-dependencies预定义描述符:
http ://maven.apache.org/plugins/maven-assembly-plugin/descriptor-refs.html#jar-with-dependencies

您可以通过稍微修改这个来轻松创建自己的描述符。只需设置<unpack>false</unpack><outputDirectory>/some-dir</outputDirectory>

如果你到目前为止还没有使用过这个插件,请阅读:
http
://maven.apache.org/plugins/maven-assembly-plugin/usage.html 了解那里实际发生了什么以及如何使用它。

于 2012-04-24T08:32:27.890 回答
0

这不是 Maven 的工作方式。Maven 具有以下先决条件:

  • 使用二进制文件安装 Maven(当然)
  • 缓存所需 JAR 并存储创建的 JAR 的 Maven 存储库。

因此,也许应该可以生成一个 WAR 文件,该文件将包含“所有需要的 JAR 文件”。

Maven 不仅管理运行时所需的 JAR,还管理运行 Maven 所需的插件,以及 Maven 过程中所需的所有 JAR(如单元测试、覆盖率、质量检查……)。

也许你应该让你的问题更具体,我也会更新我的答案。

于 2012-04-24T08:26:42.187 回答