[PHP] 如何利用shell.exec來執行java jar檔案
環境: Windows 7 64bit on VMware Worksation 10.0 前置作業: 1. 安裝java7以上版本 2. 安裝apache + php環境(此範例使用xampp) 3. 安裝任意壓縮軟體(此範例使用7-zip) ---------- 1.製作一個java程式並匯出成Demo.jar檔 public class Main { public static void main ( String [ ] args ) { System . out . printundefined args [ 0 ] + " " + args [ 1 ] ) ; } // END of main } // END of class Main 匯入其中的參數形態為String,參數會以args的陣列保存。 此Demo的內容為輸入兩個參數,會在程式內結合兩個參數並輸出。 2. 在php執行資料夾htdocs創建一個run.php,並將Demo.jar複製到htdocs資料夾 <?php $output = shell_exec ( " \" C: \P rogram Files (x86) \J ava \j re1.8.0_60 \b in \j ava \" " . " -jar Demo.jar abc 123 2>&1" ) ; var_dump ( $output ) ; ?> 其中java請自行參考你電腦中java的絕對位置, jar檔請參考你要執行之程式對於run.php的相對位置。 abc, 123分別為參數args[0]和args[1], 2>&1會讓程式顯示錯誤訊息,不一定要放上去。 3. 執行run.php後,你應該會看到這個畫面: 會發生這個問題, 是因為還沒有在jar檔指定那個class為預設執行的。 4. 用7-zip開啟Demo.jar,用notepad打開在META-INF資料夾的MANIFEST.MF: 裡面應該只有版本號: ...