15

そのため、.jar ファイルであるサードパーティのライブラリがあります。その瓶にはいくつかのクラスがあります。問題は、その .jar の 1 つのクラスに 1 つのバグがあることです。jarファイルを逆コンパイルしてJavaコードを確認できるので、それはわかっています。これは、クラスがプログラムのバグの原因であると確信しています。

アイデアは、クラスを削除して自分のクラスに置き換えることですが、方法がわかりません。

4

3 に答える 3

18

これを行うには複数の方法があります。

  1. winrarを使ってみてください。その中でjarを開き、クラスファイルを含むディレクトリを探索できます。クラスファイルを削除および追加できます。

  2. winrar を使用したくない場合は、次のようにします。

このコマンドを使用してjarを抽出します

jar -xvf yourjar.jar

瓶を爆発させます。古いクラス ファイルを削除し、更新したクラス ファイルを追加します。

次のコマンドを使用して jar を再作成します。

jar -cvf yourjar.jar directoryofexploderjar/

于 2013-05-29T05:36:55.817 に答える
1
  1. クラスを拡張し、メソッドを書き換えてバグを除去する

  2. JDEC を使用してクラスを逆コンパイルおよび置換します ( http://jdec.sourceforge.net/ )

于 2013-05-29T05:29:19.480 に答える
0

元のパッケージと同じパッケージに独自のクラスを記述します。クラスが Java クラスパスのサードパーティ jar の前にあることを確認してください。このようにして、元のバージョンをオーバーライドし、クラス ローダーがクラスをロードします。

于 2013-05-29T05:41:25.137 に答える