如何在基于Linux的系统中为Jenkins设置JAVA_HOME?

huangapple 未分类评论49阅读模式
英文:

How to set JAVA_HOME in Jenkins for a linux based system?

问题

我的默认Java位于以下位置-

admin@pc1:~$ readlink -f $(which java)
/usr/lib/jvm/java-11-openjdk-amd64/bin/java

因此,我在Jenkins全局工具配置中将上述目录(即/usr/lib/jvm/java-11-openjdk-amd64/bin/java)设置为JAVA_HOME,但是它显示以下消息-

> /usr/lib/jvm/java-11-openjdk-amd64/bin/java 不是Jenkins主服务器上的目录(但在某些代理上可能存在)

所以我移除了 /bin/java 部分,并粘贴了以下 /usr/lib/jvm/java-11-openjdk-amd64 但是,它仍然显示相同的消息。

之前没有将$JAVA_HOME设置为我的电脑,所以我通过终端将$JAVA_HOME设置为 /usr/lib/jvm/java-11-openjdk-amd64;然后我再次尝试在Jenkins中设置JAVA_HOME,但是它仍然显示相同的消息。

是什么原因呢?

英文:

My default java is located in the following location-

admin@pc1:~$ readlink -f $(which java)
/usr/lib/jvm/java-11-openjdk-amd64/bin/java

So,I set the above directory (ie./usr/lib/jvm/java-11-openjdk-amd64/bin/java) as the JAVA_HOME in the Jenkins-Global Tool Configuration but, it's showing the following message-

> /usr/lib/jvm/java-11-openjdk-amd64/bin/java is not a directory on the
> Jenkins master (but perhaps it exists on some agents)

So I removed the /bin/java -portion and pasted the following /usr/lib/jvm/java-11-openjdk-amd64but, it still showing the same message.

$JAVA_HOME was not previously set to my pc,So I set the $JAVA_HOME to /usr/lib/jvm/java-11-openjdk-amd64 through terminal;then I again tried to set the JAVA_HOME in Jenkins, but, it's still showing the same message.

What is the reason?

答案1

得分: 0

你是否使用与管理员不同的用户来启动Jenkins?如果是这样的话,您需要检查该用户是否也设置了java_home。对于我的情况,我正在使用root用户启动Jenkins,并且为root用户设置了java_home,它可以正常工作。还有一个要检查的地方就是Jenkins配置文件。可能的位置是大多数Linux操作系统的/etc/default或/etc/sysconfig/jenkins。在这里,您可以指定环境变量来设置JAVA_HOME。请参考此网址以供参考:https://support.cloudbees.com/hc/en-us/articles/209715698-How-to-add-Java-arguments-to-Jenkins-

JAVA_HOME应该设置为类似于/usr/lib/jvm/java-6-openjdk的路径。

英文:

Are you using any separate user than admin to start Jenkins? In that case, you need to check if java_home is set for that user also? For my case, I am using root user to start jenkins an java home is set for root user and it works fine.One more place to check that is Jenkins configuration file . Possible location is /etc/default or /etc/sysconfig/jenkins for most of the Linux OS. Here, you can specify env variable to set JAVA_HOME. Please refer this url for reference :https://support.cloudbees.com/hc/en-us/articles/209715698-How-to-add-Java-arguments-to-Jenkins-
JAVA_HOME should be set like /usr/lib/jvm/java-6-openjdk ....

huangapple
  • 本文由 发表于 2020年5月3日 15:23:05
  • 转载请务必保留本文链接:https://java.coder-hub.com/61570945.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定