1
我正在通過cmd中的以下命令從類文件創建jar文件。工作正常。由processbuilder創建jar時出現故障
C:\>cd \GenClass
C:\>path c:\Program Files\Java\jdk1.5.0_09\bin;%path%
C:\>echo Main-Class: myjar >manifest.txt
C:\>jar cvfm myjar.jar manifest.txt proxy/*.class
但是我在processbuilder中失敗了。
ProcessBuilder pb1= new ProcessBuilder("cmd.exe", "/C", "jar cvfm contactproxy.jar manifest.txt proxy/*.class");
pb1.directory(new File("D:\\GenClass"));
pb1.environment().put("CLASSPATH", "D:\\java\\jdk1.5.0_14\\bin");
java.lang.Process p1 = pb1.start();
String line1;
BufferedReader r1 = new BufferedReader(new InputStreamReader(p1.getInputStream()));
while ((line1 = r1.readLine()) != null) {
System.out.println(line1);
}
r1.close();
jar無法創建。 我在做什麼錯?
從p1.getErrorStream()中更好地打印以查看發生了什麼問題。 –
錯誤說'jar.exe'不被識別爲內部或外部命令。我想我無法正確設置類路徑。 –
PATH和CLASSPATH是不同的東西。使用命令行時,設置PATH,但在使用流程構建器時,請設置CLASSPATH。 –