管理项目依赖关系

时间:2018-06-05 15:07:47

标签: java eclipse maven

我有几个依赖于同一段代码的java项目。让我们打电话给他们:

Project A
Project B
ComponentX.java

项目设置如下:

Project A > ComponentX.java
Project B > ComponentX.JAR

这项设置项目B包含ComponentX的jar文件很不方便。每当我对ComponentX.java进行更改时,我都需要记住将Jar导出到Project B.这也使得调试Project B变得困难。必须有一个更好的方法,我只是不知道谷歌的东西。我正在使用Eclipse。我使用Maven所以使用它的任何解决方案都可以,但我希望有一个简单的基于Eclipse的解决方案。

我猜测我需要将componentX移动到自己的项目中,并以某种方式让其他两个依赖它。

2 个答案:

答案 0 :(得分:2)

您很可能想要创建一个新的库项目,项目A和项目B都将其用作标准Maven <dependency>

网上提供的指南很少。如果您的项目都是同一个多模块Maven构建的一部分,那么您可以查看Creating a Multi Module Project guide on spring.io

答案 1 :(得分:0)

所以我有一个灯泡时刻。可以将任何Maven项目导入任何其他Maven项目中,就像导入其他依赖项一样。现在似乎很明显,但是我只导入了别人写的库。

因此,如果您有三个项目:

  • WebApp
  • DesktopApp
  • 依赖性

WebApp和桌面都需要引用依赖关系的地方。如果两个项目中都有重复的代码,只需将其拉入自己的项目并将其从两个项目中删除,这也可能适用。

只需右键单击>配置>转换为Maven项目,即可将Dependency项目设为Maven项目。您将获得一个.pom文件,其顶部类似以下内容:

<groupId>Dependency</groupId>
<artifactId>Dependency</artifactId>
<version>0.0.1-SNAPSHOT</version>

然后您要做的就是将其添加为需要访问它的任何其他项目的.pom的依赖项:

<dependency>
    <groupId>Dependency</groupId>
    <artifactId>Dependency</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

就这样