how to run only parent pom.xml in maven multi-module project

亡梦爱人 提交于 2019-12-20 02:29:15

问题


I have maven multi-modules project. At the parent level, i have some java files. And in the parent pom.xml, at the package phase i do some stuff.

Usually, when i run mvn package at parent level, the package phase of parent pom will be run and all the modules will be packaged as well.

I am looking for a way that allow me to do these (when i run mvn package):

  • allow me to run only paren pom.xml (the script at the package phase), not the modules. This is the 1st priority.
  • allow me to run paren pom.xml and some particular modules (like module 1, module 2 BUT not module 3 , module 4).

Can i use profile for those issue?

Thanks.


回答1:


While I agree with the fact that you may not have optimal project structure, the answer is that Maven 2.2.1 has an option "--non-recursive" which satisfies your first requirement:

-N,--non-recursive    Do not recurse into sub-projects

So something like this:

mvn --non-recursive clean compile 



回答2:


Why do you want to have java code on the top level? In my opinion this is not a very good idea. Have your code in the subprojects and let the top-level project be responsible for holding the general information and configuration of the entire project.

If you have some base-library code in the top-level project now, you can put it in a sub-project and set up dependencies between the projects.




回答3:


Take a look at Maven parent pom vs modules pom

The nature of your question indicates that your project structure may not be optimal.



来源:https://stackoverflow.com/questions/4811870/how-to-run-only-parent-pom-xml-in-maven-multi-module-project

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!