Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven将带有依赖项的jar复制到另一个项目中_Maven_Maven 2_Maven Plugin_Maven Assembly Plugin - Fatal编程技术网

Maven将带有依赖项的jar复制到另一个项目中

Maven将带有依赖项的jar复制到另一个项目中,maven,maven-2,maven-plugin,maven-assembly-plugin,Maven,Maven 2,Maven Plugin,Maven Assembly Plugin,我有两个maven项目,第二个项目扩展了第一个项目的一些类。我想用第一个项目的所有依赖项创建jar文件,并将其作为依赖项包含到另一个项目中。我搜索这个已经很久了,有可能吗 我是马文的新手,在此方面的任何帮助都将不胜感激 谢谢如果我没弄错的话,你想创建一个包含所有依赖项的uber jar,对吗 请参考此问题如果您只想将依赖项添加到另一个项目,请将第二个项目依赖项添加到新项目,第一个项目依赖项将被继承并自动包含。这就是所谓的可传递依赖项。在免费书籍中阅读更多信息。在第二个项目的POM文件中,在“依赖

我有两个maven项目,第二个项目扩展了第一个项目的一些类。我想用第一个项目的所有依赖项创建jar文件,并将其作为依赖项包含到另一个项目中。我搜索这个已经很久了,有可能吗

我是马文的新手,在此方面的任何帮助都将不胜感激


谢谢

如果我没弄错的话,你想创建一个包含所有依赖项的uber jar,对吗


请参考此问题

如果您只想将依赖项添加到另一个项目,请将第二个项目依赖项添加到新项目,第一个项目依赖项将被继承并自动包含。这就是所谓的可传递依赖项。在免费书籍中阅读更多信息。

在第二个项目的POM文件中,在“依赖项”部分下指定第一个项目的maven坐标(groupId、artifactId、version、packaging)。它将通过传递方式获取所有依赖工件


尽管在Maven中可以生成一个独立的jar及其所有依赖项。为此,您可以使用maven shade插件。()

创建胖罐子有两种方法。您可以将jar本身包含在dependent的jar中。在这种情况下,您将没有太多的控制权,而管理员将完成这项工作。或者,您可以解压jar并将所有内容压缩在一起以创建新的jar。你必须决定哪一个最适合你。如果您有同一类的多个版本,那么将整个jar包含在新jar中会有所帮助,但是如果版本是一致的,那么最好通过解压和压缩所有内容来创建一个jar。对于第二个过程,我建议使用创建uber jar。

感谢Olovier,我已经创建了带有依赖项的jar,现在我想将其作为依赖项包含在另一个maven项目(pom文件)中,以便从我的本地.m2文件夹中获取。