【问题标题】:produce non dependent ikvm dll from jar从 jar 生成非依赖 ikvm dll
【发布时间】:2012-01-13 03:45:28
【问题描述】:

我需要将 jar 转换为我使用 ikvm 实现的 dll。但是,每当我将 dll 添加到 Visual Studio 中的 c# 项目时,它都会抱怨我需要添加对 ikvm.openjdk.core.dll 的引用。

“java.lang.Object”类型是在未引用的程序集中定义的。您必须添加对程序集 'IKVM.OpenJDK.Core, Version=7.0.4335.0, Culture=neutral, PublicKeyToken=13235d27fcbfff58' 的引用。

有没有一种方法可以在没有这种依赖的情况下将 jar 转换为 dll?也许某些命令会将所有内容“构建”到一个 dll 中?谢谢

【问题讨论】:

    标签: dll ikvm


    【解决方案1】:

    不,没有这种依赖关系就不可能将 jar 编译为 .NET 程序集,因为 IKVM 编译器会将本机 Java 类的使用重新映射到此程序集中包含的 Java 类的 .NET 实现(或其他 IKVM 程序集,具体取决于代码中的类)。

    如果程序集的数量是问题,您可以合并它们。见How do I merge multiple .net assemblies into a single assembly?

    【讨论】:

    • 这部分我理解......但是从 IKVMC 那里,有没有办法让引用“隐式”?例如(我对 .NET 知之甚少)我知道我的库需要更多的 IKVM Dll 才能运行,但我只需要引用我的库 + IKVM.OpenJDK.Core 库,其余的由 .NET 计算。是否有可能在生成的 dll 中获得相同的行为?
    【解决方案2】:

    ikvm.open.jdk 是否需要 java 来运行我的意思是当我运行 dot net 应用程序时它是否与 jdk 通信以填充结果

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-03
      • 2018-08-10
      • 2011-07-17
      • 1970-01-01
      • 1970-01-01
      • 2011-10-19
      相关资源
      最近更新 更多