javah については多くの質問がありますが、3 日間、問題の解決策が見つかりませんでした。
私のJavaファイルは正常に動作し、エラーはありません。Java ファイル「I2CInterface.java」を「jdk/bin」ディレクトリにコピーしました。次に、「javac I2CInterface.java」I2CInterface.class が正常に作成されました。しかし、「javah -jni I2CInterface」は機能せず、ヘッダー ファイルを作成できません。エラーは「クラスが見つかりません」です。クラスパスを試してみましたが、うまくいきません。環境を設定し、パス C:\Program Files\Java\jdk1.8.0\bin を追加します。仕事がありません。これは、いくつかのクラスで興味深いjavah の作業であり、ヘッダーを作成できます。しかし、このクラスと一部のクラスでは機能しません。
問題はJavaファイルについてですか?以下の私のJavaファイル。
package com.multitek.ipintercomflatunit;
public class I2CInterface {
private static native int i2cwrite(byte[] data);
private static native byte[] i2cread(int data_len);
public static int write(byte[] data) {
return(i2cwrite(data));
}
public static byte[] read(int data_len) {
return(i2cread(data_len));
}
static
{
System.loadLibrary("i2cinterface");
}