在linux tomcat执行process的问题
本帖最后由 symakai 于 2014-01-07 12:45:56 编辑 在做一个项目,用户通过网页端上传java代码,然后在服务器端进行编译执行,执行时代码是这样写的(其中Main是用户提交的java文件经过编译后生成的):
ProcessBuilder pb=new ProcessBuilder("java","Main","A","3","4","5");
pb.directory(new File("/usr/local/tomcat/apache-tomcat-7.0.39/webapps/oops/Oops/33/test_all_mid_5361d7f8-2766-4672-9941-b106ec400685/Answer/1120120745/Tarantula/project/src"));
Process process=pb.start();
Exception in thread "main" java.lang.NoClassDefFoundError: Main
this is getErrorStream:
Caused by: java.lang.ClassNotFoundException: Main
this is getErrorStream:
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
this is getErrorStream:
at java.security.AccessController.doPrivileged(Native Method)
this is getErrorStream:
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
this is getErrorStream:
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
this is getErrorStream:
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
this is getErrorStream:
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
this is getErrorStream:
Could not find the main class: Main. Program will exit.