5

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.

3 Answers 3

16

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 
Sign up to request clarification or add additional context in comments.

1 Comment

Thanks. Very helpful for testing when you need one of your child projects in another project as dependency and thus only want to build the respective module as well as the parent for the parent pom to be available.
1

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.

1 Comment

I have several multi-module projects where site documentation is in /src/site/markdown in the root of the project (same level as parent pom). Being able to run 'mvn site -N' means I can iterate on my rendered documentation without having to build every sub-module.
0

Take a look at Maven parent pom vs modules pom

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

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.