Java-运行外部代码 [英] Java - Running external code

查看:143
本文介绍了Java-运行外部代码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想拥有一个Java程序,该程序可以将.CLASS文件本身用作.CLASS文件的库,并可以运行该代码.这有可能吗?

I want to have a Java program that can read a .CLASS file and run that code, using itself as the .CLASS file's library. Is this at all possible?

推荐答案

java.lang.ClassLoader

将帮助您加载外部类.

java.lang.reflect.Method

将帮助您调用已加载的外部类的方法.

will help you to invoke methods of loaded external classes.

小例子:

ArrayList<URL> urls = new ArrayList<URL>();
urls.add(new File("/path/to/your.class").toURI().toURL()); //can add several..

ClassLoader cl = new URLClassLoader(urls.toArray(new URL[urls.size()]));
Class<?> c;
c = Class.forName("your.class.name", false, cl); //now you have your class

Method m = c.getMethod("main", String[].class); //now your have your method
m.invoke(null, new Object[] { "argument1", "argument2" }); //now you "run that code"

我什么也没运行,我只是写了它,目的是向您展示一些可以帮助您的工具.

I did not run anything, i just wrote it to show you some tools that can help you.

这篇关于Java-运行外部代码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆