1

IKVM を使用して Java jar ファイルを ac# dll に変換しています。このjarファイルにはいくつかの依存関係があり、 -r:reference.dll を介してすべて参照しました。

それでも次の警告が表示されますが、それを取り除く方法がわかりません。

IKVM.NET Compiler version 7.2.4630.5
Copyright (C) 2002-2012 Jeroen Frijters
http://www.ikvm.net/

warning IKVMC0111: Emitted java.lang.NoClassDefFoundError in "myproject.myclass.setFocus()V"
("org.eclipse.swt.widgets.Control")

jarfile を変換するコマンドは次のとおりです。

ikvmc -target:library -debug -out:project.dll -r:org.eclipse.swt.win32.win32.x86_3.5.2.v3557f.dll -r:severalmoreherretofollow project.jar 2> project.log

クラス「org.eclipse.swt.widgets.Control」は、「org.eclipse.swt.win32.win32.x86_3.5.2.v3557f.dll」内で宣言されており、ikvm を使用して dll にコンパイルするときにエラーは発生しませんでした。

前もって感謝します

4

1 に答える 1

2

複数の jar ファイルを 1 つの jar ファイルとしてコンパイルする場合は、1 つのステップでコンパイルすることをお勧めします。詳細については、ウィキを参照してください。これにより、依存関係を循環させることができなくなります。

-r オプションで完全修飾ファイル名を使用する必要があると思います。

于 2013-02-01T16:11:17.853 に答える