2011-08-21 147 views
3

我想寫一個使用Windows API並編譯爲本地代碼而不是字節碼的Java程序。GNU Java編譯器是否支持JNA?

我不想使用JNI(C,C++,...接口),而是想用純Java代碼和JNA編寫代碼。

GNU Java編譯器允許我這樣做嗎? GNU Java編譯器是否支持使用JNA?

+0

[CNI](http://gcc.gnu.org/onlinedocs/gcj/About-CNI.html)是JNI的替代品。如果您可以使用[JCG](http://en.wikipedia.org/wiki/GCJ)編譯JNA類,那麼您可以從中受益。但是,爲什麼你要從本地代碼中對本機代碼進行動態調用?我認爲這是額外的表現陷阱。 –

回答

1

我相信在GNU Java編譯器中,人們使用不同的接口來鏈接到本機代碼CNI(編譯本機接口)。 CNI與JNI(Java Native Interface)框架有關(我相信)。注意:我從來沒有使用過GNU Java編譯器,也沒有使用CNI,但使用過JNA和JNI。

+1

有人試圖編輯我的答案,但在閱讀試圖編輯時,我認爲如果他們編寫自己單獨的和翔實的答案,我們都會好得多。他們提供的信息非常有用,應該分享,並應該獨立。 :) –

+1

可惜,因爲我的插件是有用的,我想。最好有一個完整的答案,而不是十個關於同一主題的答案。 –