我有几个java 非maven项目(有一个主项目)和几个 maven项目(有一个主项目)。现在我需要在非maven项目中使用maven-projects功能。
我不得不说,我对maven知之甚少。我在NetBeans IDE中工作。
我有几个选择:
制作非maven项目maven项目并添加依赖项。 我不能这样做,因为其他人按照他们的方式使用非maven项目,我不能只是做这样的改变。
将maven项目设为非maven项目并将其添加为库 我不能这样做,因为会有很多库要添加。依赖关系可能很大。
对于非maven项目,将jar作为maven项目的库添加。这与(2)选项相同。我尝试了它并将所有maven项目罐作为库添加到我的非maven主项目中,但是在运行时由于缺少罐子而有很多NoClassDefFoundError
例外(maven项目依赖的第三方罐子)上)。
有什么想法吗?
提前谢谢。
我使用了来自 chresse 的pom调整。 整个pom在这里:https://codeshare.io/5ZeYN2
我使用了 Tunaki 问题中的maven命令,标记为(how-can-i-create-an-executable-jar-with-dependencies-using-maven)的副本
mvn clean compile assembly:single
谢谢大家。
答案 0 :(得分:3)
您可以从maven项目中生成包含所有依赖项的jar。
将以下插件添加到主maven项目的pom中。 mvn assembly:single
将创建一个包含所有依赖项的附加jar('projekt'-jar-with-dependencies.jar
),它可以包含在您的非maven项目中:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.6</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>