これを聞くのは奇妙に思えるかもしれませんが、なぜそれが必要なのかを説明するには永遠に時間がかかります...
私が必要としているのは、JAR ファイル内の既存の Java .class ファイルを、コマンド プロンプトまたは Python プログラム内で編集する方法です。ユーザーがボタンを押すと、自動的に発生する必要があります。
これを行う方法、または可能かどうかはまったくわかりません。
jar ファイルは zip パッケージです。ファイルを解凍し、内容を編集して元に戻すだけです。難しいのは、.class ファイルの編集方法です。Java .class ファイルはバイナリ形式です。役立つライブラリがいくつかあります。
クラスが JVM クラスローダによってすでにロードされている場合、アプリケーションが再実行されるまで .class ファイルを実際に再読み込みしない可能性があるため、このアプローチには問題があります。
BCELが存在することは知っていますが、使用していないため、a) python から、または b) 実行時に使用できるかどうかはわかりません。
編集: 実際には、Jeffrey のリストは、バイト コード マニピュレータのより包括的なリストを提供するため、より優れています。
はい、できます。どのようにそれを行うかは、あなたが何をしたいかによって異なります。分野横断的な問題については、AspectJを参照してください。AspectJ を使用すると、クラスがコンパイルされた後でもカスタム コードを追加できます。