我正在尝试构建一个用jsp编写的在线java编译器,其中服务器端接受来自客户端的上传代码,编译它们然后运行代码,最后将输出打印到用户的html表单。 我写了一个代码,创建一个临时的java文件(temp.java)包含来自客户端的代码,然后编译它,创建(temp.class)文件, 问题是在我尝试执行文件的最后一步,当我使用本地机器cmd时运行正常:
java temp
但是当我使用java runTime在服务器上调用命令时:
Process proc = Runtime.getRuntime().exec("java testing/temp");
输出是:
Error: Could not find or load main class temp
问题是,运行时无法找到二进制文件.. 那路径是什么? 编译器在包含java文件的包中,而客户端二进制文件被创建并存储在build / web中的文件夹(测试)中。
答案 0 :(得分:1)
尝试为您的班级提供完整路径。我认为它应该有所帮助。