我正在尝试根据这个建议从我的 java 类运行 maven:
Runtime.getRuntime().exec("mvn");
但我得到:
java.io.IOException: Cannot run program "mvn": CreateProcess error=2, The system cannot find the file specified
mvn 在我的路径上,我可以从 cmd 运行它:
C:\Users\m>mvn -v
Apache Maven 3.0.3 (r1075438; 2011-02-28 18:31:09+0100)
Maven home: C:\apache-maven-3.0.3\bin\..
Java version: 1.6.0_20, vendor: Sun Microsystems Inc.
Java home: C:\Program Files\Java\jdk1.6.0_20\jre
...
有什么建议吗?
最佳答案
尝试:
Runtime.getRuntime().exec("cmd \c mvn");
编辑: 回答第一个问题...
是的。请参阅:Process#getInputStream .基本上,您需要使用正在创建的子流程的输出。
我也喜欢这篇文章:http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html
关于java - 在 Windows 中从 Java 代码运行 Maven?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9674220/