そのため、.jar ファイルであるサードパーティのライブラリがあります。その瓶にはいくつかのクラスがあります。問題は、その .jar の 1 つのクラスに 1 つのバグがあることです。jarファイルを逆コンパイルしてJavaコードを確認できるので、それはわかっています。これは、クラスがプログラムのバグの原因であると確信しています。
アイデアは、クラスを削除して自分のクラスに置き換えることですが、方法がわかりません。
そのため、.jar ファイルであるサードパーティのライブラリがあります。その瓶にはいくつかのクラスがあります。問題は、その .jar の 1 つのクラスに 1 つのバグがあることです。jarファイルを逆コンパイルしてJavaコードを確認できるので、それはわかっています。これは、クラスがプログラムのバグの原因であると確信しています。
アイデアは、クラスを削除して自分のクラスに置き換えることですが、方法がわかりません。
これを行うには複数の方法があります。
winrarを使ってみてください。その中でjarを開き、クラスファイルを含むディレクトリを探索できます。クラスファイルを削除および追加できます。
winrar を使用したくない場合は、次のようにします。
このコマンドを使用してjarを抽出します
jar -xvf yourjar.jar
瓶を爆発させます。古いクラス ファイルを削除し、更新したクラス ファイルを追加します。
次のコマンドを使用して jar を再作成します。
jar -cvf yourjar.jar directoryofexploderjar/
クラスを拡張し、メソッドを書き換えてバグを除去する
JDEC を使用してクラスを逆コンパイルおよび置換します ( http://jdec.sourceforge.net/ )
元のパッケージと同じパッケージに独自のクラスを記述します。クラスが Java クラスパスのサードパーティ jar の前にあることを確認してください。このようにして、元のバージョンをオーバーライドし、クラス ローダーがクラスをロードします。