我在做一个Java Record/Replay工具,我需要从我的主Java应用程序启动Java应用程序。 我需要,以拦截事件,并记录他们访问EventDispatchThread,所以我通过反射启动该应用程序使用(代码片段简体):从另一个Java应用程序启动Java应用程序
Class<?> app = Class.forName(mainClass);
Method m = app.getMethod("main", new Class[] { String[].class });
m.invoke(null, new Object[] { new String[] {} });
我以前所有的罐子动态加载到classpath并且应用程序几乎完美启动。
当应用程序需要访问任何文件并使用相对路径执行时,就会出现该问题。由于应用程序是通过我的应用程序启动的,因此路径与从其正常路径启动的路径不同,并且找不到文件。
我能做些什么来解决这个问题?动态改变执行环境?有任何想法吗?
我查一下如何为“的Java代理”,什么恰好运行代码手段。虽然我不明白你的括号 – jpsstavares 2010-03-05 17:39:23