2012-08-01 99 views
3

我正在尝试使用IKVMC来转换一些“开箱即用”的JAR文件,我们的研究人员已经使用了可以在C#项目中使用它的DLL。虽然我能够成功完成某些JAR--包含Main()方法的包被转换为.exe文件(如IKVMC中记录的那样)。我不知道如何处理这些。强制IKVMC将JAR转换为DLL?

有谁知道我怎么会之一:

  1. 使用输出EXE在我的C#应用​​程序
  2. 获取IKVMC生成JAR成DLL eventhough的JAR包含一个main()方法

IKVMC命令提示输出:

ikvmc xom.jar 
Note IKVMC0004: using main class "nu.xom.Info" based on jar mainfest 
Note IKVMC0002: output file is "xom.exe" 
+1

一个'.exe'应该像任何其他的组件。你是否试过把它放到你的项目中? – millimoose 2012-08-01 16:15:15

+0

@millimoose在下面的答案中看到我的评论。谢谢您的帮助。我想要了解JAR中的类/对象,而不是EXE(如果我最终可以避免的话) - 因为并非所有代码都是需要的。 – bharris9 2012-08-01 18:05:59

回答

2

EXE文件只是具有入口点的DLL。您可以像引用外部DLL文件一样引用C#项目中的EXE。

+1

绝对如此。当我启动IronPython时,我导入了一个应用程序的.exe程序集,然后重新混合主循环,以便它以不同于编译的'main()'的顺序执行操作。 – sblom 2012-08-01 16:35:59

+1

@ mike-atlas我能够添加EXE - 但我最终还搞清楚如何强制IKVMC将JAR转换为DLL。只需要在命令行参数中添加'-target:library'。 – bharris9 2012-08-01 18:01:42