我试图搜索现有的问题,但无法找到任何问题 - 感觉我的问题很简单,但可能是因为它非常具体我无法在Stackoverflow / Google上找到答案。
无论如何 - 我与Maven的项目相互依赖。在某些情况下,我希望依赖项位于JAR而不是项目依赖项(即,我希望依赖项是Eclipse中“库”的一部分,而不是构建路径中的“项目”)。
非常感谢您的帮助!感谢
答案 0 :(得分:3)
要将引用的项目与jar文件而不是项目放在同一个工作区中,我们可以使用VM参数-Declipse.useProjectReferences = false或将其添加到pom文件中。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-eclipse-plugin</artifactId> <version>2.9</version> <configuration> <useProjectReferences>false</useProjectReferences> </configuration> </plugin>
有关详细信息,请参阅此URL。
答案 1 :(得分:2)
在Eclipse的项目属性中,选择Maven。有一个复选框,“解决工作区项目的依赖关系”。如果选中此选项,则使用Eclipse项目。否则,jars将与其他maven依赖项一样使用,假设您正常地在pom.xml中获得了依赖项。
编辑:如果您的项目不是maven项目,那么您必须在Eclipse外部创建jar并将其添加为jar或外部jar。如果项目是maven项目,那么上面的工作就可以了。答案 2 :(得分:0)
说Client-Project
取决于Services-Project
。如果Services-Project
生成JAR。在Client-Project
POM中,您将表达对此JAR的依赖。它会是这样的:
<dependency>
<groupId>group.id.of.services.project.goes.here</groupId>
<artifactId>artifact.id.of.services.project.goes.here</artifactId>
<version>version.number.of.services.jar</version>
</dependency>
如果services项目生成一个名为com.mycompany.services-1.3.jar的JAR,则依赖项为:
<dependency>
<groupId>com.mycompany</groupId>
<artifactId>services</artifactId>
<version>1.3</version>
</dependency>