2012-11-02 53 views
1

我使用IKVM將Java應用程序編譯到C#dll。我試圖在一個使用.Net Framework 2.0的C#項目中使用這個DLL,但由於轉換後的dll框架明顯更高,所以失敗了。我查看了IKVM編譯器的參數,但沒有找到關於該框架的任何信息。現在使用IKVM指定.Net Framework

我的問題是:

我只能對指定編譯DLL/EXE與IKVM框架版本?如果是這樣,怎麼樣?

在此先感謝。

+0

只是爲了清理一些東西 - IKVM不生成C#DLL - 它生成用Java編寫的.NET程序集。 –

回答

2

當前版本的IKVM 7.1與框架2.0一起構建。如果你用IKVMC創建一個dll,那麼它默認使用框架2.0。另一件事是如果你建立IKVM自我。

如果你想編譯一個dll有較高的框架2.0,那麼你需要使用命令行參數:

-nostdlib 

而且你需要設置所有所需的引用(如mscorlib.dll中)到使用命令行參數目標框架:

-r:<file name> 
+1

我正在使用當前版本的IKVM(我沒有自己編譯它)。但是,默認情況下,Dll使用的Framework版本似乎爲3.5,這就是爲什麼我有點困惑。 – kaiser

+0

即使是7.2測試版引用2.0。你能證明你爲什麼認爲你的目標是3.4嗎? –

0

根據通過所有的IKVM版本我搜索IKVM 0.38.0.2及更高版本都包含有框架3.5內置IKVM二進制文件。

0.36.0.11是取決於2.0的最後一個版本。該版本僅支持Java 6,並且方式太舊了。

相關問題