我想在我的 .NET 项目中使用Java 工具(称为 Mallet) http://mallet.cs.umass.edu/download.php 。
为了将此工具转换为 .NET 库,我尝试使用 Apache Ant 在单个 .jar 文件中构建它。我已经按照上面链接中的说明完成了所有操作。
从 Mercurial 存储库下载开发者版本。
下载 Apache Ant,安装 JDK,设置 JAVA_HOME var 以使用 Apache Ant。
使用 Ant 我已经构建了单个 mallet.jar 文件。
然后我会使用 IKVMC 将 mallet.jar 转换为 .NET 库。转换时,我收到了很多警告,例如:
Warning IKVMC0108: not a class file "cc/mallet/util/tests/TestPriorityQueue$1.cl
ass", including it as resource
(class format error "51.0")
尽管有这些警告,但还是创建了 mallet.dll。但是当我尝试从我的 .NET 项目中引用它时,它看起来是“空的”。它没有任何类或命名空间。我不会忘记参考 IKVM.OpenJDL.Core。
这很不寻常,我在 Google 中找不到任何相同的问题。
我认为这个问题出在警告中。而且我从未与 Ant 合作过,我并不完全了解所有流程。