0

我需要从 jenkins 启动 sh 脚本,这很简单,但是我的脚本更改了 JAVA_HOME 的符号链接,实际上我使用 sh 脚本在 JDK 版本之间切换。当我在没有 jenkins 的情况下启动工作时它可以工作(在 bash 上编写的工作),但它在 jenkins 下不起作用......詹金斯在启动后记得 JAVA_HOME 并使用这个路径......我怎样才能从 jenkins 下的 sh 脚本更改 JAVA_HOME ?如果可能的话,可能来自脚本调用詹金斯重新加载配置......谢谢任何帮助!

4

2 回答 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 回答