0

私はJNIに非常に慣れていないので、ここ で与えられたチュートリアルを使用して、コマンドを次のように指定してHelloWorldプログラムを作成しようとしています

javah HelloWorldまたはjavah -classpath <classpath> HelloWorld異なる値の場合

たとえば。javah -classpath /home/my_myfolder -o HelloWorld.h example.jni.HelloWorld

しかし、私は得ています

 error: cannot access HelloWorld
 class file for HelloWorld not found
 javadoc : error -Class HelloWorld not found
 Error : No classes were specified on the command line.

ここにリストされているすべての回答を既に試しましたが、うまくいきませんでした。クラスパスとして何を指定するかについて少し具体的に説明していただければ幸いです。ファイルと同様に、私のコードHelloWorld.javaが にあると仮定します。/home/my_folderHelloWorld.class

更新 - さて、問題は解決されました。それはクラスパスではありませんでしたが、私が使用したリンクにあるサンプルプログラム自体に欠陥がありました。

HelloWorld obj = new HelloWorld();サンプルコードでは、main()関数内に余分なものが必要です。

4

1 に答える 1

0

javah の引数は、java コマンドと同様に、パッケージ名を含む完全なクラス名です。ツールのドキュメントを参照してください。

于 2013-06-25T20:49:36.103 に答える