14

JAVA_HOME環境変数を持つ Jenkins Slave (A Windows PC) があります。Slave の Java バージョンを更新したので、環境変数も更新しました。

Jenkins Web インターフェイスを介してこのスレーブのシステム プロパティを見ると、JAVA_HOMEプロパティは古いものとして報告されます。

echo %PATH%Windows PC で実行すると、正しい値が表示されます。println System.getenv("PATH")スレーブの Jenkins Node スクリプト コンソールで実行すると、古い JAVA_HOME 値が表示されます。

スレーブを削除して再度追加しようとし、Jenkins サーバーを再起動しました。それでも古い値は更新されません。

何かご意見は?

4

5 に答える 5

11

これは Jenkins のバグです: https://issues.jenkins-ci.org/browse/JENKINS-27739

解決する3つの方法(私はそれぞれ個人的に確認しました):

  1. Jenkins を >=1.617 に更新する (推奨)
  2. Jenkins マスターを再起動します
  3. Jenkins スレーブを削除してから、再度追加します
于 2015-05-29T00:34:42.040 に答える
9

Hudson/Jenkins は、複数の Java バージョンをサポートしているため、スレーブ環境変数を使用しないため、GUI で Java ホーム環境変数を構成します。

あなたがする必要があるのは、Manage Hudson/Jenkins に行き、Manage Nodes を選択することです。リストから構成するノードを選択し、[構成] を選択します。一番下には Node Properties セクションがあります。[ツールの場所] チェックボックスをオンにします。[追加] をクリックし、ドロップダウン リストで JDK を選択して、新しいパスを追加します。

于 2011-12-16T11:36:43.313 に答える
2

スレーブを再起動すると、構成の問題が修正されました。

于 2015-02-04T13:48:42.860 に答える
1

Jenkins のバージョンを更新すると解決します。そうでなければ、これは私にとってはうまくいきました(Jenkins 1.6、ビルド/テストノード:MacOSX Mojave):

まず、次のコマンドを使用してビルド/テスト ノードにJava 8 をインストールします。

brew update
brew cask install caskroom/versions/java8

次に、Jenkins Web パネルでビルド/テスト ノードをクリックし、[構成]をクリックしてから [詳細... ] ボタンをクリックすると、複数のテキスト フィールドが表示されます。次に、JavaPath フィールドに Java 8 へのパスを追加します。

ここに画像の説明を入力

私にとって、このパスは次のようなものです:

/Library/Java/JavaVirtualMachines/jdk1.8.X_XXX.jdk/Contents/Home/bin/java

注:X_XXX以前の Java 8 バージョンに置き換えてください。

次に保存します

その後、ビルド/テスト ノードを切断し、再度接続します。これで問題は解決するはずです。

ソース

于 2019-02-27T20:13:30.037 に答える
0

再起動は必要ありません。

Manage Jenkins -> Manage Nodes and Clouds 目的のスレーブをクリックします。次に、パネルから「切断」を選択します。

スレーブは自動再接続します。起動しない場合は、「起動」をクリックしてください。

これにより、「PATH」を含む環境変数が更新されます。

于 2021-12-01T10:02:16.223 に答える