如何用Java呼叫c++生成的dll檔案(2)?

前面一篇講了用Java呼叫c++生成的dll檔案的基本用法,然而實際使用時還會有許多變數,再次做一下補充

工具/原料

JDK

Visual Studio 2010

編碼的GBK不可對映字元

使用javac命令編譯java檔案時,有時候會報如下錯誤:編碼的GBK不可對映字元。上網查了一下,是由於檔案編碼格式不對引起的,可以用記事本開啟java檔案,另存為ANSI編碼的檔案就行了。

如何用Java呼叫c++生成的dll檔案(2)

如何用Java呼叫c++生成的dll檔案(2)

VS建立非空工程時的注意事項

前面一篇建立VS專案是選擇了win32的dll工程,並勾選了空專案,其實不勾選空專案(使用帶有預編譯頭的專案)也是可以的,匯出符號是也不是必選。

如何用Java呼叫c++生成的dll檔案(2)

修改Eclipse庫路徑

剛開始的方法是我們把VS生成的dll檔案複製到java目錄下,但這樣每改動一下程式就要複製貼上,很影響除錯效率。為了使開發過程中更加方便,我們只需把VS專案中dll所在的路徑加到Eclipse的包含路徑中即可。

如何用Java呼叫c++生成的dll檔案(2)

在Eclipse中專案上點右鍵,選擇Property->Java Build Path ->Source->Native Library Location ,再點選Edit。選擇External Forder 就可以引用專案目錄外的庫檔案,把dll檔案的目錄選進去就Ok了。WorkSpace選項用來選擇工作空間內的庫檔案。

如何用Java呼叫c++生成的dll檔案(2)

之後別忘了把之前拷貝到專案資料夾中dll檔案刪掉,否則可能會呼叫這個舊版本的dll。

相關問題答案