为什么要在JVM中执行脚本语言
Why would I like to execute scripting language in JVM
我无法理解为什么以及在何种情况下我想在服务器端的 JVM 中使用 运行 脚本语言。我的意思是我们已经在 JAVA 中提供了很棒的库...为什么我不使用它们来代替 JVM 中的 运行ning 脚本呢?
请帮助我理解这个概念,谁能告诉我一两个用例,其中 运行 在服务器端 JVM 中编写脚本比使用 JAVA 库更有优势。
我能想到的一个用途是:
- Javascript引擎可用于计算算术表达式
它们是字符串格式。
example :: String expression = "2+4";
下面是 link 使用 java 脚本引擎执行此操作的示例。
这里更普遍的问题是 "Why would I want to execute code in <some scripting language> in Java?",其中 Javascript 只是这种语言的一个例子。
引用 this article:
Some Java applications' requirements make integration with a scripting language necessary. For example, your users may need to write scripts that drive the application, extend it, or contain loops and other flow-control constructs. In such cases, it's sensible to support a scripting language interpreter that can read user scripts, then run them against your Java application's classes.
基本上:如果您想让用户以需要丰富编程语言的方式自定义您的应用程序。
为什么 Javascript 特别是?这取决于您的应用程序。可能有理由选择它(例如,您的目标用户已经知道 Javascript),或者不选择(例如,Lua 在游戏行业中更适合编写脚本)。
我无法理解为什么以及在何种情况下我想在服务器端的 JVM 中使用 运行 脚本语言。我的意思是我们已经在 JAVA 中提供了很棒的库...为什么我不使用它们来代替 JVM 中的 运行ning 脚本呢? 请帮助我理解这个概念,谁能告诉我一两个用例,其中 运行 在服务器端 JVM 中编写脚本比使用 JAVA 库更有优势。
我能想到的一个用途是:
- Javascript引擎可用于计算算术表达式 它们是字符串格式。
example :: String expression = "2+4";
下面是 link 使用 java 脚本引擎执行此操作的示例。
这里更普遍的问题是 "Why would I want to execute code in <some scripting language> in Java?",其中 Javascript 只是这种语言的一个例子。
引用 this article:
Some Java applications' requirements make integration with a scripting language necessary. For example, your users may need to write scripts that drive the application, extend it, or contain loops and other flow-control constructs. In such cases, it's sensible to support a scripting language interpreter that can read user scripts, then run them against your Java application's classes.
基本上:如果您想让用户以需要丰富编程语言的方式自定义您的应用程序。
为什么 Javascript 特别是?这取决于您的应用程序。可能有理由选择它(例如,您的目标用户已经知道 Javascript),或者不选择(例如,Lua 在游戏行业中更适合编写脚本)。