今の開発では自社の米パートナー企業が提供する、とあるエンジンプログラムを利用するのですが、そのライブラリがJNIで作られていました。
Java初心者な私は今日までJNIって言葉を知らなかったのですが…Java Native Interfaceの略称だとのことです。解説はWikipediaなど色々情報はあるのでそちらをお願いします(^^; →Java Native Interface
で、呼び出した時に出たエラーは
Can't load IA 32-bit .dll on a AMD 64-bit platform
というものでした。
Stack Overflowの情報だと
などがありました。
上記読む限り、パートナーに64bitでコンパイルしたものを要請せねばいかんようですね(^^;
ただ全く動かせないまま、だと辛いので、とりあえず、JDKの32bitを入れて、NetBeansで以下のように指定して回避しようかと。
JAVA_HOMEとか変えたくない…と思っていたのですが、該当するプロジェクトを指定して、利用するJDKを変更ができるっぽいですね。便利です。
3.左下にあるプラットフォームの追加を選びます
4.インストールしたJDKの32bit版を指定します
5.プラットフォーム名は適当に「JDK 1.7(32bit)」などとしました
6.対象のプロジェクトファイルで右クリックして「プロパティ」を選択します
上記で追加したJavaプラットフォームが見えるので選択します。
上記設定でとりあえず動きました(^^;ほっ。
ノートPC(32bit)でお試しで作って動いていたコードだったので、今日デスクトップ(64bit)に移してみたら、いきなり動かなかったので一瞬何が起きたのかわからず、ちょっと焦りました…。開発環境の差もしっかり意識していかん。