【问题标题】:IKVM - Unable to convert a jar to dllIKVM - 无法将 jar 转换为 dll
【发布时间】:2012-09-09 19:38:23
【问题描述】:

团队,

我使用 IKVM 将 jar 文件转换为 dll,这样我就可以将它与 C# 一起使用来测试 Java 应用程序...我没有原始的 java 源代码或类文件。 这是我正在做的事情以及我得到的错误:

ikvmc myApplication.jar

Note IKVMC0002: output file is "asapi.dll"
Warning IKVMC0100: class "org.apache.log4j.Logger" not found
Warning IKVMC0111: emitted java.lang.NoClassDefFoundError in "com.myApp.authenticateUser(LNote IKVMC0002: output file is "asapi.dll"
Warning IKVMC0100: class "org.apache.log4j.Logger" not found
Warning IKVMC0111: emitted java.lang.NoClassDefFoundError in
vices.AsApi.authenticateWithArtifact(Ljava.lang.String;Lcom.myApp.AppApi)....

有什么想法吗?这个jar文件不包含main方法...

问候, 狗屁

【问题讨论】:

  • 为什么一定要这么做,能不能不直接用java测试jar?

标签: java .net api ikvm


【解决方案1】:

我相信你需要更多类似的东西:

/usr/bin/mono \
 /path/to/ikvm-0.42.0.6/bin/ikvmc.exe \
 /path/to/project/target/project-1.2.3.4.jar \
 -out:/path/to/project/target/project-1.2.3.4.dll \
 -keyfile:/path/to/project/target/private-key.snk \
 -assembly:project-1.2.3.4 \
 -fileversion:1.2.3.4 \
 -version:1.2.3.4

如果您的应用程序依赖于第三方 jar,您可能需要将它们添加到 jar 中,使用阴影(根本不是好习惯)。

【讨论】:

  • 从哪里获得 private-key.snk 文件?我不认为我们的应用程序团队创造了这个。问候,Deekshit
  • 这只是一个详细的例子。我相信你可以放心跳过-keyfile-assembly-fileversion-version
猜你喜欢
  • 2011-07-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多