簡體   English   中英

在服務器上使用Runtime.exec執行二進制Java文件

[英]executing a binary java file using Runtime.exec on server

我正在嘗試構建一個用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中的文件夾(測試)中。

嘗試提供上課的完整路徑。 我認為這應該有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM