2016-10-18 6 views
0

通常、Javaリフレクションを使用して、単にClass.forName("fully qualified class name")を実行してクラスを取得できます。リモートマシンでクラスを処理する方法は?

は今、私はクラスファイルを持っている(.class)クライアントマシンにあります。たとえば、クライアントマシンがwindowsで、クラスファイルmyClass.classc:\tmp\myClass.classにある場合です。私は、サーバー内の別のマシンでは、このクラスファイルを「プロセス」にクラスのメソッドを知っている必要がありますなど

これはそれを行う方法上の任意の提案:-)必要な理由は聞かないでください?

+0

あなたがあなたのJVMにリモートクラスファイルをロードするか、リモートの場所でクラスを実行する意味ということですか..?具体的にしてください。 – Noushad

+0

私の目的は、クラスのメソッドを知ることです。クラスのメソッドは、Classオブジェクトを通じて実行できます。だから私はクラスをロードする必要があると思う。 – user3014901

答えて

0

私はあなたがここにネットワーククラスローダを利用するべきだと思います。 thisを確認してください。

URLClassLoader loader =新しいURLClassLoader(新しいURL [] {新しい URL( "http://123.321.456.121:8080/test/")});

クラスC = loader.loadClass( "こんにちは");

オブジェクトO = c.newInstance()。

+0

"c:\ tmp \ myClass.class"のようなローカルファイルにURLを使用できますか?別のマシンからアクセスできますか? – user3014901

+0

@ user3014901 yes Ofcourse –

+0

マシンAのファイル "c:\ tmp \ myClass.class"のURLを取得し、マシンBにロードする方法は?私はそれがうまくいかないかもしれないので、それを間違えたかもしれません。 – user3014901

関連する問題