私は ProGuard を選択しました。設定したオプションは次のとおりです。
収縮
オプション:
- 縮む
保つ:
- アプリケーション
- アプレット
また、保持します:
- 列挙
- データベース ドライバー
- Swing UI L&F
難読化
オプション:
- 難読化する (duh! :P)
- 積極的にオーバーロードする
- 一意のクラス メンバー名を使用する
- 大文字と小文字が混在するクラス名を使用する
- パッケージ階層をフラットにする
- クラスの再パッケージ化
名前を保持:
- ネイティブ メソッド名
- .class メソッド名
最適化
オプション:
- 最適化
- インターフェイスを積極的にマージする
削除する:
- [すべてチェック済み]
情報
事前検証とターゲティング:
- 事前検証
一貫性と正確性:
- 構成の潜在的な間違いに注意してください
- 誤った入力の可能性について警告する
- 非パブリック ライブラリ クラス メンバーをスキップする
そして、私が瓶を取り、それを次のように置くと:
起動時に次のアプレット エラーが発生します。
java.lang.RuntimeException: java.lang.NoClassDefFoundError: b
sun.plugin2.applet.Plugin2Manager.createApplet で (不明なソース)
sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run で (不明なソース)
java.lang.Thread.run で (不明なソース)
原因: java.lang.NoClassDefFoundError: b
java.lang.Class.getDeclaredConstructors0(ネイティブメソッド)で
java.lang.Class.privateGetDeclaredConstructors で (不明なソース)
java.lang.Class.getConstructor0 で (不明なソース)
java.lang.Class.newInstance0 で (不明なソース)
java.lang.Class.newInstance (不明なソース) で
sun.plugin2.applet.Plugin2Manager$12.run で (不明なソース)
java.awt.event.InvocationEvent.dispatch (不明なソース) で
java.awt.EventQueue.dispatchEvent (不明なソース) で
java.awt.EventDispatchThread.pumpOneEventForFilters (不明なソース) で
java.awt.EventDispatchThread.pumpEventsForFilter (不明なソース) で
java.awt.EventDispatchThread.pumpEventsForHierarchy (不明なソース) で
java.awt.EventDispatchThread.pumpEvents (不明なソース) で
java.awt.EventDispatchThread.pumpEvents (不明なソース) で
java.awt.EventDispatchThread.run で (不明なソース)
原因: java.lang.ClassNotFoundException: b
sun.plugin2.applet.Applet2ClassLoader.findClass で (不明なソース)
java.lang.ClassLoader.loadClass で (不明なソース)
java.lang.ClassLoader.loadClass で (不明なソース)
... 14 以上
原因: java.io.IOException: HTTP 接続のオープンに失敗しました:http://mystikrpg.com/b.class
sun.plugin2.applet.Applet2ClassLoader.getBytes で (不明なソース)
at sun.plugin2.applet.Applet2ClassLoader.access$000 (不明なソース)
sun.plugin2.applet.Applet2ClassLoader$1.run で (不明なソース)
java.security.AccessController.doPrivileged(ネイティブメソッド)で
... 17以上
例外: java.lang.RuntimeException: java.lang.NoClassDefFoundError: b
難読化前のjarファイルの中身は次のclientOffline.jarとおりです。
line_tile/
META-INF/
そして、難読化後のjarファイルは次のnewOne.jarとおりです。
line_tile/
META-INF/
weapon/
me.gif
a.class
b.class
私はこれが私がこれを解決するのを助けるのに十分であることを願っています. 私は何を間違っていますか?