【问题标题】:Problems about Jenkins running remote shell scriptJenkins运行远程shell脚本的问题
【发布时间】:2016-05-05 01:48:17
【问题描述】:

我在使用 jenkins 时有一些问题。

场景:

  1. 我已经在机器A上安装了一个tomcat,并配置了包括JDK在内的所有必要环境,它们运行良好。
  2. 我编写了一个名为restart.sh 的shell 脚本来杀死tomcat 进程,然后重新启动。 我执行脚本,它运行良好。当我使用ps -ef检查tomcat进程时,它显示了我已经配置的确切JDK路径。JDK路径是/usr/local/java/JDK7
  3. 当我通过 jenkins 执行 restart.sh 脚本时,问题来了。我可以看到使用错误的 JDK 路径 /usr/bin/java 的 tomcat 进程,而不是我配置的路径。我使用 SSH Publishers 插件来运行远程脚本。如下图所示: enter image description here

我不知道这个问题是怎么发生的,请大家帮忙,谢谢

【问题讨论】:

    标签: java shell tomcat jenkins


    【解决方案1】:

    这可能是路径变量的问题,只是为了交叉验证,在您的服务器上找到 JAVA_HOME 1. 通过手动登录服务器 2. 从您的 jenkins 作业的 ssh 部分的 Exec 命令中,很可能您会找到答案.

    我假设您的 jenkins 配置为使用在其根级别定义的 jdk。

    如果这没有解决,我们需要从另一个角度来看待这个问题。

    【讨论】:

    • 感谢 prudviraj,似乎 exec 远程 shell 不会加载 ~/.bash_profile,所以我在我的脚本中添加了这一行“export JAVA_HOME= /usr/local/java/JDK7”,然后问题消失了。
    • @frloopee 如果对您有帮助,请接受我的回答/投票。这将帮助用户找到相同问题的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-28
    • 2021-06-03
    • 2012-09-29
    相关资源
    最近更新 更多