2

我创建了一个简单的 Maven 项目(包装类型 - Jar),它依赖于 Spring 和 My Sql 库(mysql-connector)。当我打包这个项目时,$mvn package我在成功执行这个命令后得到了一个 jar 文件。

我还试图在输出 jar 文件中包含所有依赖项,所以我添加了一个“jar-with-dependencies”程序集描述符,但正如文档所述:

The `jar-with-dependencies` descriptor builds a JAR archive with the contents of the main project jar along with the unpacked contents of all the project’s runtime dependencies. 

我想在JAR形式中包含依赖项,而不是unpacked方式。我怎样才能做到这一点?

4

3 回答 3

4

Java 无法从开箱即用的 jar 中加载 jar 中的类。您必须使用one-jarmaven plugin之类的项目对其进行配置。

于 2011-03-11T17:03:05.157 回答
2

也许这可以帮助Maven Shade Plugin:Maven Excecutable Jar

奥利维尔

于 2011-03-18T18:12:38.647 回答
0

Vicky 正在尝试聚合 jar,这在 Maven 中被称为“building-an-aggregate-jar”。您可以在 Robert 的 [1] 和 Artifact Technical Notes 的 [2] 博客中找到更多信息。一个讨论[3] 也可以提供帮助。

问候

[1] http://rombertw.wordpress.com/2010/05/14/maven-recipe-building-an-aggregate-jar/

[2] http://blog.artifact-software.com/tech/?p=121

[3] http://maven.40175.n5.nabble.com/Aggregate-POM-for-thirdparty-package-dependencies-not-downloaded-td113927.html

于 2012-02-27T12:43:03.863 回答