【发布时间】:2022-01-09 17:41:56
【问题描述】:
我正在使用 ASP.NET 构建一个 REST API,理想情况下它应该能够使用 Java 代码。我已经设法在一个简单的控制台应用程序中使用jni4net 在.NET 和Java 之间建立了一座桥梁。由于 .NET 和 Java 不存在互操作性,这是绝对必要的。
尽管如此,我无法使用 jni4net 在我的 ASP.NET 项目中创建桥接器。显然这是一个常见错误,因为 .NET core 2.1 或更高版本不支持下面显示的方法。我指的是这个问题:“Error in the webapp while connecting with JVM using jni4net from C#”。
MissingMethodException:找不到方法:'System.Reflection.Emit.AssemblyBuilder System.AppDomain.DefineDynamicAssembly(System.Reflection.AssemblyName, System.Reflection.Emit.AssemblyBuilderAccess)'。
请注意,我将 .NET core 3.1 用于我的 ASP.NET 项目和 jni4net 0.8.8.0。无论如何,如果需要,我会更改我的 .NET 版本。我当前在 Program.cs 中的实现如下所示:
using net.sf.jni4net;
public class Program
{
public static void Main(string[] args)
{
var setup = new BridgeSetup();
setup.Verbose = true;
Bridge.CreateJVM(setup); // Error is thrown here
}
}
有人知道是否有办法绕过此错误或如何在 ASP.NET 项目中使用 Java 代码?我非常感谢任何帮助或建议,纯粹的!
【问题讨论】:
-
理想情况下是的,在现实世界中没有。
-
@ThorbjørnRavnAndersen 您能否描述一下原因,以便我继续跟进?你有什么例子或参考我吗?
-
问题标题已更改。你不能轻易做到这一点。查看 ikvm 项目