web-dev-qa-db-ja.com

Jenkins、Java_HOMEを指定

Apt-getを使用して、ubuntuボックスにopenjdk-6-jdkをインストールしました。

システム情報では、jenkinsはJava.Homeが/usr/lib/jvm/Java-6-openjdk/jreであると言っています。

ただし、そのディレクトリをJenkinsでJava_HOMEとして指定すると、「システムの構成」は、ディレクトリがjdkディレクトリのように見えないというエラーメッセージを返します。

また、mavenのインストールを取得できません。

明らかな何かが欠けていますか?

18
NimChimpsky

Java_HOME変数を/ usr/lib/jvm/Java-6-openjdkに設定し、Jenkinsを起動するユーザーが使用できるようにする必要があります。

カイル・ストランドのコメントから:

2015年4月現在(私は思う)、JenkinsにはJava7が必要です。また、システムのデフォルトがまだJava 6.である場合、Javaバイナリパス(Java)を正しいバージョンに設定する必要があることに注意してください。これらの変数は設定されており、Jenkins Webページのインストール手順とともにリストされた設定ファイルにあります(たとえば、Debianの場合は/ etc/default/jenkinsです)。

20

Jenkins 2(私の場合は2.3.2)を使用すると、正しい方法でパイプラインファイルに次のように挿入できます。

env.Java_HOME="${tool 'jdk1.8.0_111'}"
env.PATH="${env.Java_HOME}/bin:${env.PATH}"

「jdk1.8.0_111」は、Java Jenkinsに最初に登録された構成の名前

5
user1767316

CentOS 6.xおよびRedhat 6.xシステムでは、openjdk-develパッケージにjdkが含まれています。 RedHatで使用されている-develパターンに精通していれば十分ですが、Javaネーミング標準に準拠するjdkパッケージを探している場合は混乱を招きます。

4
Mike Lococo

openjdk-6はJavaランタイムであり、JDKではありません(たとえば、javacを含む開発キット)。インストールopenjdk-6-jdk

MavenにはJDKも必要です。

[EDIT] JDKがインストールされたら、/usr/lib/jvm/Java-6-openjdk にとって Java_HOME(つまり、jre部分なし)。

2
Aaron Digulla

誰かが同様の問題を抱えている場合、関連するパッケージにデフォルトのSudo apt-getインストールを使用しました。正しい設定は次のとおりです。

Java_HOME=/usr/lib/jvm/Java-7-openjdk-i386

そして

MAVEN_HOME=/usr/share/maven2
1
NimChimpsky

Windowsマシン用のソリューションを追加したかっただけです。

  • Windows Server 2008 R2 Standard、SP1
  • ジェンキンス2.89.4
  • Javaバージョン8.171

症状:Jenkinsサービスが開始され、すぐに停止します。
Jenkins.wrapper.logには、Javaへの誤ったパスを示す行があります。

-C:\ Program Files\Java\jre1.8.0_141\bin\Java -Xrs -Xmx6g -Dhudson.lifecycle = hudson.lifecycle.WindowsServiceLifecycle -jar "C:\ Program Files(x86)\ Jenkins\jenkins.war"の開始--httpPort = 8080 --webroot = "C:\ Program Files(x86)\ Jenkins\war"

修正:Jenkinsのパスはjenkins.xmlにハードコードされています。パスを新しいJavaロケーションに変更します。

Windows環境変数も使用できますが、私はそれで成功しませんでした。Javaインストーラーがそれらを更新するとは思わないので、とにかく毎回それを手動で更新する必要があります。

1
BClaydon

Ubuntu 12.04では、openjdk-7-jdkをインストールする必要がありました

その後、javacは機能していました!

それから私は使用できます

/usr/lib/jvm/Java-7-openjdk-AMD64

0
lutinwood

JenkinsでJava_HOMEから/usr/lib/jvm/Java-6-openjdk

0
Casey

http://pkg.jenkins-ci.org/redhat/ からパッケージrpmパッケージをダウンロードします。デフォルトの1.7 Javaのように、Javaの場所を追加できます。私のシステムでは、jenkinsに/opt/jdk1.8.0_60/bin/Javaを使用しています。 jenkins起動スクリプト/etc/init.d/jenkinsを開き、ここに追加のJavaを追加します。/opt/jdk1.8.0_60/bin/Javaを追加した場合、

/ usr/bin/Javaとして使用可能なJavaを検索すると、Jenkinsが必要とする最小バージョンを指し示していない可能性があります。

http://www.nabble.com/guinea-pigs-wanted-----Hudson-RPM-for-RedHat-Linux-td25673707.html を参照してください

候補= "/opt/jdk1.8.0_60/bin/Java

0
Hasan S Syed

この問題に来て、Jenkins Agentを設定するアクセス権を持っている人のために、Java_HOME [Jenkins]> [ノード]> [エージェント名]> [構成]ページから:

「エージェントごと」の環境変数の設定

0
cstroe

Ubuntu 10.0.4から12.0.4にアップグレードすると、足がずれました。/usr/lib/jvm/Java-6-openjdkを指すJDKインストールを構成(自動構成?)しましたが、これにはJDKが含まれず、/ usr/lib/jvm/default-Javaへの変更は修正され、シームレスなJava-7アップグレード用。

したがって、質問への回答では、UbuntuでJava_HOMEを指定しないでください。

0
TimP

これは古いスレッドですが、特定のJava JDKを必要とするより新しいバージョンのJenkins(私の場合はJenkins 2.135)の場合、以下が役立ちます。

注:これはCentos 7用です。他のディストリビューションではディレクトリの場所が異なる場合がありますが、ubuntuでも正しいと思います。

/etc/sysconfig/jenkinsを変更し、変数JENKINS_Java_CMD="/<your desired jvm>/bin/Java"を設定します(ルートアクセスが必要)

例:

JENKINS_Java_CMD="/usr/lib/jvm/Java-1.8.0-openjdk/bin/Java"

Jenkinsを再起動します(jenkinsがサービスとして実行される場合Sudo service jenkins stopその後Sudo service jenkins start

上記により、Java 10およびJenkinsを2.135にアップグレードした後、Jenkinsのインストールが開始されない問題が修正されました。

JavajenkinsJava-homebuntcentos

0
D Turner