我一直在閱讀有關Rhino作爲在我的Java代碼中實現JavaScript的有用方法。使用Rhino的優勢(mozilla的犀牛)
讀了一段時間,在谷歌搜索和這裏之後,我無法找到我會用Java裏面JavaScript中的真正原因。
你能點上使用犀牛一個普通的Java應用程序的一些真實世界的優勢,你覺得?
我一直在閱讀有關Rhino作爲在我的Java代碼中實現JavaScript的有用方法。使用Rhino的優勢(mozilla的犀牛)
讀了一段時間,在谷歌搜索和這裏之後,我無法找到我會用Java裏面JavaScript中的真正原因。
你能點上使用犀牛一個普通的Java應用程序的一些真實世界的優勢,你覺得?
你是對的。我會使用Jython而不是JavaScript來覆蓋您提供的大部分要點。但你可能是一個java的人不會。 – Santi 2009-10-05 00:47:04
嵌入如JavaScript到您的軟件的腳本語言的好處是,你可以提供其他的方式不給的源代碼動手寫爲您的軟件插件。
一個原因寫在另一種語言的整個應用程序是,你可以寫上部署在他們的Java EE環境的企業應用程序,而無需學習Java。
爲了讓其他人能夠插入到您的應用程序而無需泄露源代碼,您只需要一個包含一些界面的軟件包。 – 2010-11-22 13:00:53
IBM Maximo 7.5 +可以完成此操作(Rhino或Jython),而且額外的好處是您可以避免對其軟件進行自定義,從而使升級更平滑。 – Bratch 2016-01-07 22:54:53
注意,由於Java 6中,腳本API是標準的Java庫 - 看包javax.script
的文檔。 javax.script
中的API是Rhino的改編版本。腳本API不僅支持JavaScript,還支持許多其他腳本語言。
見Java Scripting Programmer's Guide
頭版有提到你可能需要使用腳本的一些原因:
- 應用擴展/定製:你可以在「外部化」應用程序的部分 - 像配置腳本,財務應用程序的業務邏輯/規則和數學表達式。
- 「命令行」炮彈的應用 - 用於調試,運行/部署時間配置等大多數應用程序有一個基於Web的GUI工具configuaration這些天。但系統管理員/部署人員通常更喜歡命令行工具。爲了達到這個目的,不需要發明專門的腳本語言,而是可以使用「標準」腳本語言。
舉個例子:你可以使用腳本Python腳本,例如的Oracle WebLogic配置應用程序服務器域,啓動或停止服務器,並做其他管理任務。
這些其他語言是什麼? – 2014-11-17 22:15:46
@WesleiPrudencio請參閱http://stackoverflow.com/questions/11838369/where-can-i-find-a-list-of-available-jsr-223-scripting-languages – Jesper 2014-11-18 07:40:19
我們使用JS(通過犀牛)對我們的產品的一個DSL。這不是一個好的DSL,但這是我們如何使用JS而不是犀牛的錯。
我都是簡短而甜蜜的,但我不清楚DSL在這方面是指什麼。你願意開導我嗎? – WynandB 2013-02-20 23:52:06
DSL =域特定語言。基本上,我們需要一種允許人們表達規則的語言。 Javascript是好的,因爲通過指定全局上下文中的內容,可以很容易地設置用戶可以做什麼和不可以做什麼。不包括必需。 – user1545858 2013-02-22 05:45:52
如果你也考慮.Net,我建議與Rhino相處。
除了Java環境外,rhino是.NET環境(使用IKVM)上性能最好的解釋器之一。另一方面,nashorn在.net上很慢。
將您自己的Rhino項目移植到.NET並不是那麼困難。
除了別人說的話,遊戲開發就是一個很好的例子。由於多種原因,擁有外部腳本是遊戲開發中的一種常見做法,如果您使用Java編寫遊戲並希望使用JavaScript作爲腳本語言,Rhino非常棒。 – Josh1billion 2015-01-02 21:46:01