先日書いた「64bitのJVMで32bitのJNIライブラリを動かしたら…」の問題を一時対処するために、NetBeansのあるプロジェクトだけを32bitのJDKで実行するようにしました。が、今度はJenkins側で問題がありました(^^;
Jenkinsも64bitのマシンで64bitのJDKを入れていたので、当然64bitでテスト実行されます。
そうすると、NetBeansでは32bitでうまくテスト通過していたものが、Jenkinsの定期ビルド時に64bitで実行されて、テストでコケてしまう…という。
Jenkinsのコンソール出力を確認すると…やっぱり「Can't load IA 32-bit .dll on a AMD 64-bit platform」のエラーが!
珍しくググらずに解決したのですが、以下手順で、Jenkinsのタスクごとに利用するJDKを選べるようになりました。Jenkinsホントすごい…。
最初、ビルド前処理でWindowsバッチコマンドの実行にてJAVA_HOME変えたりPATH変えたりしたのですが、駄目でした(^^;というか、以下のやり方に先に気づけば良かった。。。
「Jenkinsの管理」を選択します
「システムの設定」を選択します
元々定義していたJDKに加えて、スイッチしたいJDKを定義します
ここが複数書けることに気付いていませんでした(^^;
※あ…ブログ書いてて気づいたけど、64bitのほうのバージョンが古い…(-_-;これはすぐアップデートせねば。イントラのみですが、一応。すいません…。
ビルドのタスク設定で追加したJDKを選択します
JDKのプルダウンが出てきたー!って感じで会社デスクで一人感動してました(笑)すごいー。
ということで、このタスクだけ32bitのJDKで動かすことができ、無事Jenkinsでのビルド&自動テストが通りました(^^)満足