在不更改包名称的情况下,将代码分离到 src 文件夹下的主分支和测试分支
Separate code to main and test branches under `src` folder without changing packages names
我想对现有项目采用 Apache Software Foundation's standard directory structure,即:
module/
src/
main/
java/
com.mycompany...
test/
java/
com.mycompany...
问题是,在将来源从 src/com.mycompany
移动到 src/main/java/com.mycompany
和 src/test/java/com.mycompany
之后,IDE (Eclipse) returns 发出警告并建议将软件包从 com.mycompany
分别重命名为 main.java.com.mycompany
和 test.java.com.mycompany
。
重要提示:
由于这是一个没有任何Maven集成的遗留项目,但仍在生产中使用,我想尽可能减少对项目的更改,但仍然将生产代码和单元测试代码分开。
我的问题:
有没有办法避免在所有源文件中重命名包,但仍然使用 Apache 的源目录结构?
您可以在 pom.xml 中执行此操作,但您也可以在 Eclipse 中编辑项目并在其中定义源文件夹
我注意到您实际上误读了 Apache 标准结构,它遵循 Maven 约定 src/main/java
等等,所以我会使用它。然后,如果您使用某种形式的 Maven-Eclipse 集成,默认情况下应该自动正确设置源文件夹。我曾经使用 mvn eclipse:eclipse
(使用 eclipse-maven-plugin)来做到这一点,但那是很久以前的事了——我现在使用 Intellij。我猜现在 Eclipse 会自动从 Maven 获取源路径。
我想对现有项目采用 Apache Software Foundation's standard directory structure,即:
module/
src/
main/
java/
com.mycompany...
test/
java/
com.mycompany...
问题是,在将来源从 src/com.mycompany
移动到 src/main/java/com.mycompany
和 src/test/java/com.mycompany
之后,IDE (Eclipse) returns 发出警告并建议将软件包从 com.mycompany
分别重命名为 main.java.com.mycompany
和 test.java.com.mycompany
。
重要提示:
由于这是一个没有任何Maven集成的遗留项目,但仍在生产中使用,我想尽可能减少对项目的更改,但仍然将生产代码和单元测试代码分开。
我的问题:
有没有办法避免在所有源文件中重命名包,但仍然使用 Apache 的源目录结构?
您可以在 pom.xml 中执行此操作,但您也可以在 Eclipse 中编辑项目并在其中定义源文件夹
我注意到您实际上误读了 Apache 标准结构,它遵循 Maven 约定 src/main/java
等等,所以我会使用它。然后,如果您使用某种形式的 Maven-Eclipse 集成,默认情况下应该自动正确设置源文件夹。我曾经使用 mvn eclipse:eclipse
(使用 eclipse-maven-plugin)来做到这一点,但那是很久以前的事了——我现在使用 Intellij。我猜现在 Eclipse 会自动从 Maven 获取源路径。