存在一种方法可以在java中调用.net程序集更具体的.dll文件?在java中调用.net程序集的最佳和简单的方法
我正在开发.net的框架现在我需要将其迁移到Java,我可以做到这一点?我在.net中使用c#。
存在一种方法可以在java中调用.net程序集更具体的.dll文件?在java中调用.net程序集的最佳和简单的方法
我正在开发.net的框架现在我需要将其迁移到Java,我可以做到这一点?我在.net中使用c#。
检查是这种反应是有帮助.. Calling .net assembly from java jvm crashes..
遇到了这个有趣的网站(可能不是直接对您有所帮助)...
最简单的方法应该是COM - 启用.Net程序集。通过这种方式,您可以像调用普通的WIN32 DLL那样调用任何方法。
有些样品可以在这里找到:http://www.devx.com/interop/Article/19845
没有必要对COM对象,我不会推荐任何定制的解决方案,因为它会像重新发明轮子。有很多关于这样的集成的具体情况和细节,就像传递“ref”,“out”,泛型方法等等一样。我会建议的最好的方法是使用JAVA到.NET桥接器,如www.javonet.com 。
这里是关于这个解决方案的短文章: http://javabridges.hubpages.com/hub/Using-NET-libraries-from-JAVA-is-that-possible
还有其他这样的桥,但用我们的javonet很容易API与一个JAR文件,你可以复制你的.NET的DLL,并直接调用它,而不任何额外的步骤。它支持.NET异常,对象配置,调用实例和静态方法,包括泛型,设置/获取字段和更多...你使用java中的.NET dll对象,就像它们是原生的JAVA类一样。
使用Sample是这样的:
//Sample Usage of .NET Random Class from JAVA using Javonet
NObject dotNetRandom = Javonet.New("System.Random");
Integer randomNumber = dotNetRandom.invoke("Next",5,10);
请注意,这样的桥自动转换结果,以原生Java类型如果可能的话,并与方法的参数相同的方式。您可以在Javonet网站的快速入门指南中阅读大量样本。