I have a complex project where there are many directories that have POM files, but only some of which are sub-modules (possibly transitively) of a particular parent project.
Obviously, Maven knows the list of relevant files because it parses all the <module> tags to find them. But, I only see a list of the <name>s in the [INFO] comments, not the paths to those modules.
Is there a way to have Maven output a list of all the POM files that provided references to projects that are part of the reactor build for a given project?
Here’s a way to do this on Linux outside of Maven, by using strace.
The first line runs
mvn dependency:treeunder strace, asking strace to output to the fileopens.txtall the calls to theopen(2)system call, following any forks (because Java is threaded). This file looks something like:The second line asks Perl to print any text inside quotes that happens to end in pom.xml. (The
-lflag handles printing newlines, the-nwraps the code single quotes in a loop that simply reads any files on the command line, and the-ehandles the script itself which uses a regex to find interesting calls to open.)It’d be nice to have a maven-native way of doing this 🙂