0

Java アプリケーションのユーザー入力として .jar ファイルへのパスを取得します。クラスパス上にある 1 つのクラスをその .jar ファイルに追加し、.jar ファイルを (ネットワーク経由で) 外部サービスに送信する必要があります。他のサイトのサービスは、アプリケーションに追加したものを含む .jar ファイルからクラスをロードできる必要があります。

ソリューションには、次のプロパティが必要です。

  • ユニバーサル:ユーザーが私に与えることができるクラスを含む考えられる.jarで機能するはずです。
  • 自動: クラスの追加は、Java アプリケーションで行う必要があります。

.jar ファイルに追加するクラスには、その JAR 内の他のクラスと衝突しない名前が付けられています。

4

3 に答える 3

1

jar は通常の zip ファイルであるため、 が提供する機能を使用できますjava.util.zip

于 2012-11-27T01:00:21.987 に答える
0

クラスパスにクラスがあり、既存の JAR ファイルに挿入する目的でそのバイト配列表現を取得したいということは理解しています。

きちんとした。

javax.toolsJDK 1.6 以降で利用可能なパッケージを見てみましょう。

http://docs.oracle.com/javase/6/docs/api/javax/tools/package-summary.html

そこで利用可能なメカニズムを使用して、コードをプログラムでコンパイルし、バイトコードをシリアル化できます。そうでない場合は、ASM も役立ちます: http://asm.ow2.org/

于 2012-11-27T01:06:20.327 に答える
0

他の人が言ったことを追加するには、JAR を反対側にロードする必要がある場合は、http://docs.oracle.com/javase/7/docs/api/java/net/URLClassLoader.htmlを調べる必要があります。

于 2012-11-27T01:04:38.310 に答える