我是Maven的新手。我有两个项目。我想这样的树:
PROJECT1
--pom.xml
项目2
--pom.xml
的pom.xml在Eclipse中开发时,什么是良好的Maven项目结构?
这意味着我进行聚集和继承。通过这样做并在eclipse中导入两个项目,第二个项目无法看到外部公用pom.xml中指定的junit依赖项。 第一个项目的问题是,我没有看到只有文件夹的包。
我是Maven的新手。我有两个项目。我想这样的树:
PROJECT1
--pom.xml
项目2
--pom.xml
的pom.xml在Eclipse中开发时,什么是良好的Maven项目结构?
这意味着我进行聚集和继承。通过这样做并在eclipse中导入两个项目,第二个项目无法看到外部公用pom.xml中指定的junit依赖项。 第一个项目的问题是,我没有看到只有文件夹的包。
尝试在Eclipse中使用Package Explorer以查看包而不是文件夹。 也为这种继承尝试添加两个项目在一个父项目,并将其导入到Eclipse中。在项目既.pom文件,必须指定其父项目
正如MykoB说,确保共同pom.xml
有project1
和project2
定义为modules
。在每个子项目中,指定常见的pom.xml
为parent
。
在Eclipse中导入项目时选择包含父项pom.xml
的文件夹,并且应该有父项,并且两个子模块都正确导入。
这里假定您拥有带有m2e插件的最新Eclipse Indigo。
您已经构建的是正确的默认Maven模块结构,但Eclipse喜欢将其所有项目都放在同一级别。也就是说,你的根pom.xml中包含的模块项应该是它自己的文件夹中,像这样:
WorkspaceFolder
\_project1
\_pom.xml
\_project2
\_pom.xml
\_Builder
\_pom.xml
\_Parent
\_pom.xml
建造者的pom.xml有看起来像<module>../project1</module>
模块条目。这是你的聚合部分。另外,如果你想拥有一个继承的父类(这不一定与使用模块的pom相关),你必须将Parent条目添加到project1,project2和Builder的pom.xml中,并且你需要有一个<relativePath>../Parent</relativePath>
。
请注意,所有相对路径来自您正在调整您的子文件夹结构到eclipse喜欢的问题。
“你是否尝试过[右键单击项目] - > [maven] - > [更新项目配置]”,而不是让包只能看到文件夹“? – Martin