2011年2月11日 星期五

應用jPortable軟體架設Rhino執行環境

Rhino是用Java語言開發的JavaScript語法應用程式(因為Rhino好像不只是JavaScript直譯器?),也就是說必須在已安裝JRE(Java Runtime Environment)的環境下才能啟動Rhino,然後才能執行JavaScript語法。

以目前Java的普及率來說,電腦上沒有安裝JRE(Java Runtime Environment)環境的狀況應該算少見了。但是,如果遇到沒有辦法安裝JRE(Java Runtime Environment)環境的情形,可以考慮「使用」PortableAppsjPortable。「使用」,不是「安裝」,PortableApps提供軟體的宗旨就是為了可以方便使用者將程式安裝在USB上帶著到處走,所以該網站所提供的軟體都可以自行解壓縮後即可執行,不需要進行安裝程序(即所謂的綠色軟體)。

既然有jPortable這樣的軟體,就可以建立一個獨立而完整的Rhino執行/開發環境(意即不論Windows作業系統有沒有安裝JRE(Java Runtime Environment)環境都可以執行Rhino)。


整合的架構是打算在Dev- Rhino(從Dev-Cpp借來的名字)目錄下包裝完整的執行環境,所以只要把jPortable解壓縮到Dev-Rhino目錄下就已經完成第一步。然後再將Rhino執行JavaScript語法的指令寫在批次檔中,省去重複輸入指令的困擾。

由於不想Dev- Rhino受限於擺放的磁碟機位置,因此批次檔需要可以達到兩個需求:
  1. 可以將參數傳入批次檔中,讓Rhino的參數功能不至於無法使用。
  2. 不要寫死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.jarRhino的jar檔案
Dev-Rhino\RunRhinoScript.batN/A

執行方式如下:
RunRhinoScript.bat xxx.js  10 20

以上就是Dev- Rhino的環境設定,只要解壓縮後就可以用這個環境來執行JavaScript程式。

沒有留言:

張貼留言

Related Posts Plugin for WordPress, Blogger...