だから、私は.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の前にあることを確認します。これにより、元のバージョンであるクラスローダーをオーバーライドします。クラスをロードします。