David
David

Reputation: 3648

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

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):

Can i use profile for those issue?

Thanks.

Upvotes: 5

Views: 8483

Answers (3)

Brad Lee
Brad Lee

Reputation: 649

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 

Upvotes: 14

paweloque
paweloque

Reputation: 18864

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.

Upvotes: 1

Yuriy Zubarev
Yuriy Zubarev

Reputation: 2871

Take a look at Maven parent pom vs modules pom

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

Upvotes: 0

Related Questions