Attach API を使用して実行時にいくつかのサードパーティ クラスを変更する小さなアプリケーションがあります。残念ながら、大きな問題に遭遇しました。Attach API は JDK にしか付属していません。必要なファイルはJDKからコピーしてプロジェクトに追加できますが、これを担当するライブラリ(attach.(dll|so))はできません。これは、jar 内のリソースから attach.lib をコピーして、JRE/lib ディレクトリに配置する必要があるためです。
ユーザーが Linux マシンのルート権限を持っていない場合、このアクションは機能しないため、多くのユーザーとの互換性が失われます (このアプリはサーバー上で実行することになっており、ほとんどのサーバーは Linux であるため、確信が持てません)。すべてルートです)
アタッチ API (VirtualMachine、AttachProvider など) を担当するすべてのクラスを調べましたが、ライブラリをロードしている場所が見つかりませんでした。
これを行うことは可能ですか?つまり、JDK インストールの外部で Attach API を使用できますか? もしそうなら、どのように?