在服务器上使用Runtime.exec执行二进制java文件

时间:2016-01-18 22:46:20

标签: java jsp cmd

我正在尝试构建一个用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中的文件夹(测试)中。

1 个答案:

答案 0 :(得分:1)

尝试为您的班级提供完整路径。我认为它应该有所帮助。