2012-11-02 54 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,并且方式太旧了。

相关问题