我有以下问题: 我想从外部jar调用一个类,它使用
TheClass.class.getProtectionDomain().getCodeSource().getLocation().getPath()
获取当前运行的jar文件。 当我调用此方法时,它会抛出异常,因为getCodeSource()现在返回调用它的jar文件的路径。 我无法更改其他jar文件中的代码。有没有办法从调用此方法的类中以编程方式更改getProtectionDomain()。getCodeSource()。getLocation()的返回位置? 我使用此代码调用方法:
Class<?> c = this.loadClass(NameOfTheClass);
Method m = c.getMethod("main", String[].class);
m.invoke(c.newInstance(), new Object[]{ args });