3

Jenkins ビルドがあり、ビルドの 1 つのステップは、bat ファイルを呼び出す Windows バッチ コマンド ステップです。

バッチ ファイルには、JVM を作成する次のコマンドが含まれています。

SET JAVA_OPTS=-Xmx4g -Xms512m -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=128m

call sbt %cmd% "run %db% %dbuser% %dbpass% %df% %dfport% %dfuser% %dfpass% %epsg% %starttime%"

上記のように -Xmx4g を使用すると、Jenkins でコマンドが失敗します。

Invalid maximum heap size: -Xmx4g The specified size exceeds the maximum representable size.

ただし、コマンド プロンプトでスレーブ マシン上の Jenkins の外部で同じバッチ ファイルを実行しても、まったく問題はありません。

Jenkinsで-Xmx2gを指定してコマンドを実行すると、コマンドのヒープサイズが小さすぎるためメモリが不足しますが、少なくとも無効な最大ヒープサイズなしで実行されます。

Jenkins がこのビルドステップから実行されている JVM を制限しないようにするにはどうすればよいですか?

私は次のことを試しましたが、このビルドステップを完了するための解決策をまだ見つけていません:

  1. Jenkins サーバーのヒープ サイズの変更 (サーバー側の JVM に問題があるわけではありませんが)
  2. ビルドが実行されているスレーブに割り当てられたヒープ サイズの変更 (Jenkins サーバーのノード構成ページの JVM オプションを使用)

他の提案はありますか?

4

1 に答える 1

1

私は64ビットバージョンのJAVAを使用していませんでした-スレーブのJAVAバージョンを64ビットバージョンに変更し、JenkinsがエージェントとJVMを起動したステップの両方でこのバージョンを使用していることを確認しましたが、今は持っていません.私が報告した問題。

于 2015-08-13T14:24:42.063 に答える