2009-10-26 50 views
16

是否有人成功地設置了用於Eclipse的組合Java/C++項目?使用Eclipse開發JNI應用程序(組合Java/C++)

我想要做的事很簡單;

1) Compile my Java sources 
2) Run Javah to create the JNI interface 
3) Compile all the C/C++ sources 
4) Link native shared library + package the JAR 

提示或甚至真正的項目工作是值得歡迎的。

(Eclipse的3.5)

+0

這不是真的與你的問題有關,但我很好奇:你需要使用JNI/C++嗎?如果是這樣,爲了什麼? Java NIO可以做些什麼? – cletus 2009-10-26 11:43:01

+0

JNI是Java和一些舊的加密硬件之間的橋樑,設備的API僅作爲c庫提供。 現在我有兩個eclipse項目,一個用於java類,另一個用於C本地部分。 不必要的,我認爲Eclipse應該可以在一個項目中完成。 :/ – ointment 2009-10-26 12:19:24

回答

4

這的確聽起來像一個構建系統中的作業,如ant。只需將您的Java項目配置爲使用ant builder即可。您仍然可以從C++和Java項目中獲得語言特定支持的好處,並且只需單擊一次即可構建項目。

+0

謝謝。 我會看看這個。 – ointment 2009-10-26 15:18:22

1

我使用ant cpptasks僅在Linux和Windows上使用Eclipse實現JNI項目。使用MSVC(Windows)和GNU C++編譯器(因爲之前使用Visual Studio Magic完成了所有編譯器和鏈接器標誌,所以它的運行是一些工作),但它確實是值得的。

爲了用javah和其他所有其他任務生成C++頭文件您提到的任務Ant也可能是您首選的工具。

7

http://www.cs.umanitoba.ca/~eclipse/8-JNI.pdf 我想這是你想要的。也許有點老了。

+0

我在該文檔中看不到任何Eclipse引用。對於一般的JNI概述,沒有任何東西能夠勝過Oracle的[Java本地接口 - 程序員指南和規範](http://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/jniTOC.html) 。 至於@ ointment的原始問題(目前我正在遇到),我想我只需要使用一個良好的老式命令行界面(可能通過Ant任務)來構建我的C++/Java JNI項目。 – StockB 2013-01-10 18:50:15