Rhino是用Java語言開發的JavaScript語法應用程式(因為Rhino好像不只是JavaScript直譯器?),也就是說必須在已安裝JRE(Java Runtime Environment)的環境下才能啟動Rhino,然後才能執行JavaScript語法。
以目前Java的普及率來說,電腦上沒有安裝JRE(Java Runtime Environment)環境的狀況應該算少見了。但是,如果遇到沒有辦法安裝JRE(Java Runtime Environment)環境的情形,可以考慮「使用」PortableApps的jPortable。「使用」,不是「安裝」,PortableApps提供軟體的宗旨就是為了可以方便使用者將程式安裝在USB上帶著到處走,所以該網站所提供的軟體都可以自行解壓縮後即可執行,不需要進行安裝程序(即所謂的綠色軟體)。
既然有jPortable這樣的軟體,就可以建立一個獨立而完整的Rhino執行/開發環境(意即不論Windows作業系統有沒有安裝JRE(Java Runtime Environment)環境都可以執行Rhino)。
整合的架構是打算在Dev- Rhino(從Dev-Cpp借來的名字)目錄下包裝完整的執行環境,所以只要把jPortable解壓縮到Dev-Rhino目錄下就已經完成第一步。然後再將Rhino執行JavaScript語法的指令寫在批次檔中,省去重複輸入指令的困擾。
由於不想Dev- Rhino受限於擺放的磁碟機位置,因此批次檔需要可以達到兩個需求:
- 可以將參數傳入批次檔中,讓Rhino的參數功能不至於無法使用。
- 不要寫死java.exe的目錄位置,避免限制這個架構的存放位置。
在網路上找到底下的二個功能剛好可以解決這兩個需求:
根據以上文章介紹的方法,完成的批次檔案(RunRhinoScript.bat)內容如下:
@echo off rem ---------------------------------------------------------------------------- rem 程式功能:啟動rhino執行JavaScript。 rem 傳入參數: rem %1:JavaScript檔案。 rem rem @version 2011/01/11 初始版本。 rem @version 2011/01/24 修改開啟之「命令提示字元」視窗抬頭字串。 rem @version 2011/02/08 說明內容調整。 rem rem @see 取得Batch file所在目錄路徑(http://yjy198410.blogspot.com/2009/11/batch-file.html) rem @see 在DOS Batch File中傳遞任意個數參數(http://askalee.blogspot.com/2007/04/dos-batch-file.html) rem rem @description rem ---------------------------------------------------------------------------- :EnvVarSet title Dev-Rhino set jrePath=%~dp0%CommonFiles\Java\bin set javaExeFile=%jrePath%\java.exe set javawExeFile=%jrePath%\javaw.exe set ClassName=org.mozilla.javascript.tools.shell.Main set CLASSPATH=%~dp0%js.jar goto StartBat :StartBat "%javaExeFile%" "%ClassName%" %* goto End :End pause
這樣一來,Dev- Rhino目錄擺放在任意的磁碟機位置都可以執行,簡易的目錄結構說明如下:
檔案/目錄名稱 | 說明 |
Dev-Rhino\CommonFiles\ | jPortable目錄 |
Dev-Rhino\js.jar | Rhino的jar檔案 |
Dev-Rhino\RunRhinoScript.bat | N/A |
執行方式如下:
RunRhinoScript.bat xxx.js 10 20
以上就是Dev- Rhino的環境設定,只要解壓縮後就可以用這個環境來執行JavaScript程式。
沒有留言:
張貼留言