。classのjarファイルを新しいファイルで更新したい。特にEclipse IDEで最も簡単な方法は何ですか?
このチュートリアル jarファイルの更新方法の詳細
jar -uf jar-file <optional_folder_structure>/input-file(s)
ここで、「u」は更新を意味します。
7-Zip またはWinzipを使用して、新しいクラスファイルをJARにドラッグアンドドロップするだけです。親フォルダーアイコンを使用してWARファイルに含まれるJARファイルを変更することもでき、7Zipが内部ファイルが変更されたことを検出したときにOkをクリックします
Jarはアーカイブです。お気に入りのファイルマネージャー(たとえば、Total Commander)で自分でファイルを置き換えることができます。
jar -xvf
ファイルをディレクトリに抽出します。jar -cvf
新しいjarファイルを作成します。JARファイルは、変装した単なる.Zipです。 zipフォルダーには.class
ファイルが含まれます。
macOSを使用している場合:
.class
ファイルを見つけて、新しい.classファイルに置き換えます。その他-macOSで、元のjarを参照して単一の.classファイルをコンパイルします
javac -classpath originalJar.jar myClass.Java
これにより、myClass.classというコンパイル済みクラスが作成されます。ここから、上記の手順に従います。 Eclipseを使用してコンパイルすることもできます。プロジェクトを右クリックして[ビルドパス]-> [外部アーカイブの追加]をクリックするだけで、元のjarを参照できます。ここから、jarとしてコンパイルし、上記のZipテクニックを使用して、jarからクラスを取得できるはずです。
Jar内のproperties/my_app.propertiesファイルの編集:
"Zip -u /var/opt/my-jar-with-dependencies.jar properties/my_app.properties"
。基本的に "Zip -u <source> <dest>"
、destはjar抽出フォルダーに関連しています。
大まかな手順:
Setup the environment
Use JD-GUI to peek into the JAR file
Unpack the JAR file
Modify the .class file with a Java Bytecode Editor
Update the modified classes into existing JAR file
Verify it with JD-GUI
詳細な手順と方法については、以下のリンクを参照してください。
https://www.talksinfo.com/how-to-edit-class-file-from-a-jar/
任意の.jarファイルのソースコードをオンラインで検索し、同じプロジェクトをIDEの基本設定でインポートします。Javaファイルで必要な変更を行い、.classファイル用にコンパイルします。
コンパイルが完了したら、jarファイルを抽出し、古い.classファイルを新しいファイルに置き換えます。
そして、以下のコマンドを使用して.jarファイルを再構築します
jar cf test.jar *
注:私たちのプロジェクトではこの変更を何度も行ってきましたが、あなたがそれが役立つことを願っています。
1)ファイルを次のフォルダに抽出できます
jarname.jar
フォルダー内のファイルを置き換えます。デバッグ中にクラスを頻繁に更新する場合に便利です
2)jarを抽出してファイルを置き換えてから、jarを再度作成することができます
3)7 Zipでjarファイルを開き、新しいクラスをドラッグアンドドロップして古いクラスをコピーします