我目前正在開發一個必須用C++編寫的項目,因爲項目的其他部分是使用C++編寫的。但是,我必須使用U-Prove SDK來完成我的任務。 MS提供了兩種SDK,Java和C#。我想知道是否有任何方式使用C++代碼訪問SDK。 所以最後我想要的是一個C++程序,(不是兩個單獨的程序),可以使用U-Prove SDK。如何使用C++訪問Java SDK
順便說一句,我的英語很爛,所以如果有什麼我沒有說清楚,隨時告訴我。謝謝。
我目前正在開發一個必須用C++編寫的項目,因爲項目的其他部分是使用C++編寫的。但是,我必須使用U-Prove SDK來完成我的任務。 MS提供了兩種SDK,Java和C#。我想知道是否有任何方式使用C++代碼訪問SDK。 所以最後我想要的是一個C++程序,(不是兩個單獨的程序),可以使用U-Prove SDK。如何使用C++訪問Java SDK
順便說一句,我的英語很爛,所以如果有什麼我沒有說清楚,隨時告訴我。謝謝。
我當然沒有這方面的權威,但我過去使用過JNI(Java Native Interface)的效果很好。從Wikipedia article:
Java本機接口(JNI)被稱爲編程框架, 能夠在Java虛擬機(JVM)運行 通話和Java代碼[1]本機應用程序(程序特定於 的硬件和操作系統平臺)以及其他語言(如C,C++和彙編)編寫的庫。
我建議同時使用this tutorial和this最佳做法指南。 Here is a free book courtesy of Oracle,但是它比其他材料要古老得多。
我建議您將JNI作爲解決更多問題的一個解決方案,確定哪些問題適合JNI可以執行的操作,然後重點關注這些方面。
謝謝,它真的有很大的幫助。 – 2012-01-30 03:26:30
你打算使用Native C++還是Managed CLR C++? 如果是.NET/windows應用程序。您可以使用IKVM。它可以編譯Java代碼(源代碼或編譯的字節碼)到.NET MSIL庫,那麼在哪裏在你使用它的C++託管應用程序
謝謝,但我使用本機C++,我想我會先嚐試JNI。 :) – 2012-01-30 03:26:00
所以你(一)「不得不」使用C++和(b)「必須」使用非C++庫嗎?你確定這些要求沒有在這個過程中被破壞嗎?聽起來像是設計失敗。 – 2012-01-30 00:08:58
@LightnessRacesinOrbit這可能是該項目需要一些特定的組件,需要C/C++。想到OpenMP。至少他不是想把FORTRAN和Java混合在一起:)。 – 2012-01-30 00:12:38
從C++到Java的「標準」(即非Microsoft)方式是使用Java JNI接口。不知道微軟發明了什麼。 – 2012-01-30 00:37:29