我是一名入门级程序员,所以请在回复中加以描述.
我试图在我的C#.net应用程序中使用作为.jar文件提供的Java API.我不太了解Java,但是当我尝试运行它时,这个.jar文件说"没有主类清单属性"所以这意味着它是一个库?此Java API还附带一个.java文件,该文件显示了如何使用该库,但我看不到.jar中的代码.
我在这个网站上发现了这个问题,其中一个答案是:"以简单的方式,你可以将你的java类打包到jar文件然后在C#中使用Process类来执行和映射IO流." 我熟悉C#中的Process类,但我不明白如何在C#.net项目中使用它来使用Java库.
这可能吗?或者那个答案是不正确的?
如果是这样,你能解释我如何在我的C#应用程序中使用.jar库.
你可以使用IVKM.Net来做到这一点.IVKM.NET包含一个名为ikvmc的应用程序.这是此工具的文档:
http://www.ikvm.net/userguide/ikvmc.html
要使用它,请将您的Java代码编译成Jar.
然后运行ikvmc程序:
ikvmc myCode.jar
如果你的jar包含一个main()函数,它将被转换为一个可以在CLR上运行的exe.否则它将被转换为dll.要在项目中使用dll,只需在Visual Studio中将它们作为引用添加,并且可以在.Net应用程序中访问Java中可用的相同API.
您还可以从ikvmc中包含IKVM.GNU.Classpath.dll dll,并在应用程序中使用标准java类库.
看看IKVM ......它有工具可以为你提供一定程度的互操作.当你说Java API我假设你想从jar调用一些功能而不是只执行它