我需要从 jenkins 启动 sh 脚本,这很简单,但是我的脚本更改了 JAVA_HOME 的符号链接,实际上我使用 sh 脚本在 JDK 版本之间切换。当我在没有 jenkins 的情况下启动工作时它可以工作(在 bash 上编写的工作),但它在 jenkins 下不起作用......詹金斯在启动后记得 JAVA_HOME 并使用这个路径......我怎样才能从 jenkins 下的 sh 脚本更改 JAVA_HOME ?如果可能的话,可能来自脚本调用詹金斯重新加载配置......谢谢任何帮助!
问问题
955 次
2 回答
0
问题解决了!!!解决方案很简单,我有在 jenkins 工作中启动的 sh 脚本,如下所示:./MY_SCRIPT.sh
在 jenkins 下启动该脚本之后,我在切换 JAVA_HOME 时遇到了问题。
只需要像这样启动脚本:sh MY_SCRIPT.sh 它将像从系统中启动 smt。
于 2012-09-20T18:49:20.593 回答
0
只需尝试如下;
public static void execShellCmd(String cmd) {
try {
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(new String[] { "/bin/bash", "-c", cmd });
int exitValue = process.waitFor();
System.out.println("exit value: " + exitValue);
BufferedReader buf = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = "";
while ((line = buf.readLine()) != null) {
System.out.println("exec response: " + line);
}
} catch (Exception e) {
System.out.println(e);
}
}
有关更多详细信息:使用 java 运行的 Shell 脚本
于 2012-09-20T05:52:51.887 回答