有我想在我的.NET項目中使用的Java工具(它被稱爲Mallet) http://mallet.cs.umass.edu/download.php 。使用IKVMC將Java轉換爲.NET庫 - 警告IKVMC0108:不是類文件
要將此工具轉換爲.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合作過,我也不完全瞭解所有的流程。
Java 7的卸載,Java 6的安裝。得到同樣的錯誤。 –
@ValentinP .: **相同*錯誤? *包括*相同的版本號?然後你沒有正確清理(即,還有舊的'.class'文件)。另外:desinatlling Java 7應該沒有必要。將'JAVA_HOME'設置爲指向所需的JDK應該就足夠了。 –
然後確保在重新構建jar文件之前刪除構建目錄中的所有'.class'文件。 –