我想在開發JNI接口的android應用程序中爲Java本機方法創建頭文件。我已經在java文件中創建了本地方法。並運行android應用程序。現在我已經嘗試使用像D:\workspace\Internet_TV4\bin>javah com.internet.videos.Internet_TV4
JAVAH命令,然後這個錯誤是未來爲java本地方法創建頭文件時出現錯誤
error: cannot access com.internet.videos.Internet_TV4
class file for com.internet.videos.Internet_TV4 not found
javadoc: error - Class com.internet.videos.Internet_TV4 not found.
Error: No classes were specified on the command line. Try -help.
其中com.internet.videos是包名和Internet_TV4創建頭文件類name.I有在早期使用sdk舊版本的命令成功創建頭文件。現在我正在使用最新版本的android sdk,並且出現這種類型的錯誤。而在新版本中的所有類文件在\工作區中創建\ Internet_TV4 \ BIN \類\ COM \網絡\視頻路徑,所以我自己也嘗試該命令D:\workspace\Internet_TV4\bin>javah classes.com.internet.videos.Internet_TV4
但我又得到了一些錯誤,如
error: cannot access classes.com.internet.videos.Internet_TV4
bad class file: .\classes\com\internet\videos\Internet_TV4.class
class file contains wrong class: com.internet.videos.Internet_TV4
Please remove or make sure it appears in the correct subdirectory of the classpa
th.
com.sun.tools.javac.util.Abort
at com.sun.tools.javac.comp.Check.completionError(Check.java:164)
at com.sun.tools.javadoc.DocEnv.loadClass(DocEnv.java:149)
at com.sun.tools.javadoc.RootDocImpl.<init>(RootDocImpl.java:77)
at com.sun.tools.javadoc.JavadocTool.getRootDocImpl(JavadocTool.java:159
)
at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:330)
at com.sun.tools.javadoc.Start.begin(Start.java:128)
at com.sun.tools.javadoc.Main.execute(Main.java:66)
at com.sun.tools.javah.Main.main(Main.java:147)
javadoc: error - fatal error
所以我無法創建頭文件。任何機構都可以幫助我解決這個問題。
預先感謝您
您可以手動創建頭文件嗎? JNI函數的命名約定相當簡單。你可以看看NDK的hello-jni例子。 –
我認爲你在Andorid中使用非常古老的步驟來使用本機代碼,爲什麼你不遵循Android-NDK步驟,它很容易使用它。此鏈接將幫助您開始使用本地代碼。 http://mindtherobot.com/blog/452/android-beginners-ndk-setup-step-by-step/ – Pawan
你能檢查你提到的課程包嗎? – GustyWind