Reputation: 121
In my java code, I want to compile a maven project (mvn clean install
). How can I do it without making a Runtime.getRuntime().exec()
?
Upvotes: 0
Views: 400
Reputation: 8513
Let's see...
$ which mvn
/usr/bin/mvn
$ cat `which mvn`
... lots of code ending with...
exec "$JAVACMD" \
$MAVEN_OPTS \
-classpath "${M2_HOME}"/boot/plexus-classworlds-*.jar \
"-Dclassworlds.conf=${M2_HOME}/bin/m2.conf" \
"-Dmaven.home=${M2_HOME}" \
${CLASSWORLDS_LAUNCHER} "$@"
$ cat `which mvn` | grep CLASSWORLDS
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
${CLASSWORLDS_LAUNCHER} "$@"
So I believe you need to run org.codehaus.plexus.classworlds.launcher.Launcher.main(new String[] {"clean", "install"})
. YMMV.
Upvotes: 3