0

IntelliJ Idea で実行すると、完全に正しく動作します。出力から app.jar ファイルを実行すると、すべてがうまく機能しますが、supportLib.jar でサポートされている機能が 1 つあります。java.lang.NoClassDefFoundError: sun/plugin/dom/exception/InvalidAccessException使うと取れます。出力の構造は次のとおりです。

| D:\myprogram\

  |
  ---> app.jar 
  |
  ---> lib\  
        |
        ---> supportLib.jar
        ---> anotherSupportLib.jar

クラスパスは次のとおりです。lib/supportLib.jar lib/anotherSupportLib.jar

4

3 に答える 3

2

sun.plugin.dom.exception.InvalidAccessExceptionに存在するため、クラスパス$JRE_HOME/lib/plugin.jarに追加する必要があります。$JRE_HOME/lib/plugin.jarIntelliJはこれを自動的に追加すると思いますが、(rt.jarとは異なり)Javaランタイムによって自動的にロードされません。


コメントからのフィードバックに基づいて、アプリケーションは次のように起動する必要があります。

java -classpath "c:/Program Files/Java/jre7/lib/plugin.jar;app.jar;lib/supportLib1.jar;lib/supportLib2.jar;lib/supportLib3.jar" namespace.forms.MainForm
于 2012-10-23T13:08:48.873 に答える
2

IDEA は通常、絶対パスを追加します。

 -classpath D:\myprogram\lib\supportLib.jar;D:\myprogram\lib\anotherSupportLib.jar

このシンタックスで jar を実行してみてください。

于 2012-10-23T13:11:17.853 に答える
0

Windowsマシンでは、これはセミコロンを使用する必要がありますlib/supportLib.jar;lib/anotherSupportLib.jar

于 2012-10-23T13:08:48.627 に答える