1. 下載IKVM,選最後的版本

https://sourceforge.net/projects/ikvm/files/

java jar檔轉換成dll檔 (給Unity使用) -

2. 下載JDK7 ,非常重要!! 因為IKVM只能轉換JDK7所產生的jar檔,因為IKVM其實就是一個JVM,運行的環境是Java7

,免費版的jdk 7不太好找,花了我一點時間。請下載.zip檔,這樣可以維持你原本的JRE環境,保持在較高的版本。

https://www.azul.com/downloads/zulu-community/?architecture=x86-64-bit&package=jdk

java jar檔轉換成dll檔 (給Unity使用) -

3. 打開Netbeans(Apache11.3),專案選擇ant,選java application

右鍵,properities,然後到添加新平台(如圖),然後java standard edition,如果已經有jdk7直接切換過去即可

java jar檔轉換成dll檔 (給Unity使用) -

java jar檔轉換成dll檔 (給Unity使用) -

選到正確資料夾時,會出現一個小方塊在資料夾內的圖示,下方有next,這樣就正確了

java jar檔轉換成dll檔 (給Unity使用) -

切換為1.7即可

java jar檔轉換成dll檔 (給Unity使用) -

注意!! 即使你只需要一個工具類別,也請保留主類別的部分,IKVM在轉換時才會正確

注意!! 請勿用default package,請有明確的package名,不然在Unity內會無法使用

下圖,找到jar檔後來測試一下是否能順利執行

java jar檔轉換成dll檔 (給Unity使用) -

 

解壓縮IKVM,找到IKVM/bin/內的ikvm.exe

java jar檔轉換成dll檔 (給Unity使用) -

打開win的CLI(CMD),將資料夾切換到IKVM的bin下

打上  ikvmc -target:library  JavaApplication1.jar    ( ikvmc -target:library  檔案名稱.jar)

然後就會看到下方出現執行完成並生成了dll檔

如果要jar變成exe時,ikvmc -target:exe  JavaApplication1.jar 即可

你可以看到橘色方框有dll出現了

java jar檔轉換成dll檔 (給Unity使用) -

注意 !! 注意 !! 這樣的dll還是無法直接在Unity內使用

先把jar刪掉唷,然後將剛剛生成的dll先移動到Unity專案內,然後從bin內刪掉,最好要刪除,沒刪除有時候會出錯

接著把整個原本乾淨的bin全部拉到Unity專案內

注意!! 拉進去JavaApplication1.dll (新生成的dll)時,Unity會報錯,bin整個拉進去後錯誤不會消失,不用管他,直接清掉即可

java jar檔轉換成dll檔 (給Unity使用) -

已經成功的放入了,建立一個測試程式,using 剛剛建立的java ,直接叫用出來

(如果沒有把bin放入,會無法正確執行)

java jar檔轉換成dll檔 (給Unity使用) -

成功 !!!! 

java jar檔轉換成dll檔 (給Unity使用) -

 

 

創作者介紹
創作者 vsvs 的頭像
vsvs

vsvs

vsvs 發表在 痞客邦 留言(0) 人氣( 6 )