我想使用這個API: http://code.google.com/p/vavi-sensor/
使用在Java代碼中的MacBook加速度計。
我把.c文件到我的圖書館,但我仍然得到一個 java.lang.UnsatisfiedLinkError: no SmsWrapper in java.library.path
我想這是因爲它仍然在.c文件,而我的所有其他庫的.jar。我如何才能將它變成jar或其他可加載格式(jnilib等)? 謝謝
我想使用這個API: http://code.google.com/p/vavi-sensor/
使用在Java代碼中的MacBook加速度計。
我把.c文件到我的圖書館,但我仍然得到一個 java.lang.UnsatisfiedLinkError: no SmsWrapper in java.library.path
我想這是因爲它仍然在.c文件,而我的所有其他庫的.jar。我如何才能將它變成jar或其他可加載格式(jnilib等)? 謝謝
您需要閱讀約JNI或JNA。 JNA更容易,但你仍然需要將C編譯爲庫,然後按照JNA documentation。
.c文件只是源代碼。您需要將它們編譯爲合適的機器,打包到共享對象庫中,然後通過包裝器Java類中的本機方法引用它們。
The JNI tutorial擁有所有你需要的信息,雖然它並沒有詳細描述事物的非Java方面,因爲大多數人這樣做已經知道在C編程和構建共享對象庫。