-2
私はLinux(x64)マシンにインストールされているnetbeansを使用しています。私はライブラリとしてCコードを使用するJavaコードを書いています。定義されていないシンボルを取得する:netbeansのjniのキー
私は正しいO/Pを取得していますCのコードを実行しますが、私はJavaコードを実行したときに、私は以下のようなエラーを取得していたとき、私はヘッダファイル内でexternとして変数を宣言したCコードで:
Exception in thread "main" java.lang.UnsatisfiedLinkError: /home/pacewisdom-h34/NetBeansProjects/NetbeansJava/desJavaLib/dist/DesJavaLib.so: /home/pacewisdom-h34/NetBeansProjects/NetbeansJava/desJavaLib/dist/DesJavaLib.so: undefined symbol: key
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1821)
at java.lang.Runtime.load0(Runtime.java:809)
at java.lang.System.load(System.java:1086)
at desjava.DesJava.<clinit>(DesJava.java:10)
/home/pacewisdom-h34/.cache/netbeans/8.1/executor-snippets/run.xml:53: Java returned: 1
BUILD FAILED (total time: 0 seconds)
key
ヘッダーファイルのexternとして宣言されていますが、それは与えるエラーです。 30%の類似の質問については、Stack Overflow自体のソリューションを見ました。彼らは、Cコードで変数をインターンとして再定義することに言及しました。しかし、それは走り続けないでください。
Uは、それがCコードで定義されるべきであることを意味します。 –