2011-03-14 38 views
3

問候,從C代碼創建一個Java庫(JAR)

我想使用這個API: http://code.google.com/p/vavi-sensor/

使用在Java代碼中的MacBook加速度計。

我把.c文件到我的圖書館,但我仍然得到一個 java.lang.UnsatisfiedLinkError: no SmsWrapper in java.library.path

我想這是因爲它仍然在.c文件,而我的所有其他庫的.jar。我如何才能將它變成jar或其他可加載格式(jnilib等)? 謝謝

回答

0

您需要閱讀約JNIJNA。 JNA更容易,但你仍然需要將C編譯爲庫,然後按照JNA documentation

0

.c文件只是源代碼。您需要將它們編譯爲合適的機器,打包到共享對象庫中,然後通過包裝器Java類中的本機方法引用它們。

The JNI tutorial擁有所有你需要的信息,雖然它並沒有詳細描述事物的非Java方面,因爲大多數人這樣做已經知道在C編程和構建共享對象庫。