我的任务是将遗留项目从 ant 迁移到 maven,并且在循环导入时遇到问题。我的问题是 ant 构建了许多包含相同类的罐子。
最初的 ant 项目有一个 src 文件夹,其中包含所有包。对于 maven 兼容性,我需要使用 pom.xml 将 src 文件夹拆分为多个模块(如指南和手册中所述)。
快速的例子。
Foo.java
package myapp;
import my.domain.myapp.Bar;
...
Bar.java
import my.domain.myapp.Foo;
...
src/my/domain/myapp/foo/foo.java (foo.jar)
src/my/domain/myapp/bar/bar.java (bar.jar)
有 2 个包放在同一个父包中,编译没有问题。Ant 项目只是编译 java 类,然后通过模式生成工件。所以,编译 *.class 只是复制到 jar 中。对于 Maven,我没有看到相同的方式,我想我需要拆分包,例如:
pom.xml (parent)
--foo
----src/main/java/my/domain/myapp/foo/foo.java
----pom.xml
--bar
----src/main/java/my/domain/myapp/bar/bar.java
----pom.xml
所以,在 Maven 中,我只知道将依赖项设置为 jar 到另一个 jar。就我而言,我已经循环导入锁定构建。如果没有 bar.jar,我就无法构建 foo.jar,反之亦然。
Maven有一些东西可以为编译过程指定类路径变量而不是将依赖项设置为jar?一些解决方法?
欢迎使用最佳实践。