通过Jenkins - Slave设置(在Windows中运行),我们创建了一个ANT作业,在内部调用下面的JAVA程序,
String[] command = {"cmd" , "/c", System.getProperty("user.dir")+"/Read_email/ReadEmail.vbs"};
Process p = Runtime.getRuntime().exec(command);
System.out.println("Process Completed");
永远不会调用或执行ReadEmail.vbs
文件。
没有生成错误消息或警告。
当我从eclipse或通过Master Jenkinks运行这个java程序时,VB脚本会被执行而没有任何错误。
答案 0 :(得分:0)
您
String[] command = {"cmd" , "/c", System.getProperty("user.dir")+"/Read_email/ReadEmail.vbs"};
依赖执行进程知道在哪里找到cmd.exe以及调用.vbs的人。
我使用了完全冗余的':
String[] command = {"C:/WINDOWS/system32/cmd.exe" , "/c", "C:/WINDOWS/system32/cscript.exe", "E:/trials/SoTrials/answers/21228622/java/callme.vbs"};
try {
Process p = Runtime.getRuntime().exec(command);
} catch(Exception e) {
System.out.format("%s\n", e.toString());
}
从一个简单的命令行程序成功。我希望这个策略适用于更复杂的Jenkins设置。