Nashorn项目的目的是在Java和原生JVM中实现一个轻量、高性能的JavaScript运行时。通过Nashorn,Java开发者可以在Java应用程序中嵌入JavaScript脚本,并能够开发独立的JavaScript应用程序(使用jrunscript命令行工具来执行)。
你可以通过以下命令获取Nashorn源码:
代码
hg clone http://hg.openjdk.java.net/nashorn/jdk8/nashorn nashorn
或
hg fclone http://hg.openjdk.java.net/nashorn/jdk8 nashorn~jdk8
hg clone http://hg.openjdk.java.net/nashorn/jdk8/nashorn nashorn
或
hg fclone http://hg.openjdk.java.net/nashorn/jdk8 nashorn~jdk8
详细信息:http://openjdk.java.net/projects/nashorn/
评价:
看了一下原文,似乎主要是利用新JVM中的MethodHandles和InvokeDynamic提升性能,功能上没说会有什么提升。如果是深度整合(比如说可以在Java里很方便地用JSON语法定义一个Map,或者能非常轻量快速地启动Javascript脚本引擎对一个字符串表达式求值),那还有点看头。如果只是让Javascript在JVM上跑,暂时看不出有什么实用价值。在统一编程方式方面,Node.js做得更好。Javascript在语言特性上与Java相比没有明显优势,甚至比Java更不符合直觉,不适合用来做DSL。实在想不出有什么现实场景让一个懂Java的人非要在后台嵌入Javascript不可。
分享到:
相关推荐
【压缩包子文件的文件名称列表】中的"mod-lang-nashorn-master"可能表示这是mod-lang-nashorn项目的主分支或最新版本。"master"通常是Git仓库的默认分支,代表了项目的主线开发。在这个目录下,你可能会找到项目的...
jzsky.docx”文档中,可能会详细阐述如何使用Nashorn配合JavaScript编写WebAPI的自动化测试脚本,或者介绍如何使用JavaScript来生成和控制WebAPI的请求,以及如何利用Nashorn引擎将这些脚本集成到Java项目中。...
Nashorn作为一个OpenJDK项目(JEP174),遵循GPLv2许可协议,它作为JDK8的一部分随JDK8一起发布。Nashorn的高性能实现不仅为Java开发者提供了一个更加高效的JavaScript执行环境,同时也为动态语言在JVM上的实现提供...
- **Nodyn**:一个在Java平台上运行Node.js的项目,但活跃度较低。 总之,纳什orn作为Java 8中的一个创新特性,极大地促进了Java与JavaScript的融合,但随着技术的发展,开发者需要转向更现代的解决方案,如GraalVM...
本项目“nashorn-demos”旨在展示如何利用Nashorn引擎以及Avatar.js和WebSockets进行一些创新的实践。Avatar.js是一个用于调试和扩展Nashorn的库,而WebSockets则是一种提供全双工、低延迟通信的技术,常用于实时...
一个简单的规则引擎对于我的项目之一,我需要一个简单的规则引擎。 我喜欢建立的 。 它使用并允许使用简单的英语定义规则。 在我的用例中,我有以下目标。 保持简单(KISS) 规则引擎作为微服务(可部署到云)。 ...
这个名为"nashornscripting"的项目显然是利用Nashorn引擎来创建一个命令行脚本工具,通过JavaScript实现各种自动化任务或者脚本功能。 在Java 8之前,如果你想在Java环境中执行JavaScript,可能需要借助Rhino这样的...
当然,实际项目中是否使用Rhino/Nashorn替代第三方JSON库还需要根据项目的具体需求、运行环境以及性能测试结果来进行综合考量。 总而言之,Rhino/Nashorn引擎为Java应用提供了一个在没有第三方库支持的情况下处理...
"20150329-jdk8-nashorn-master"可能是这个项目的源码仓库名称,暗示可能包含Nashorn引擎使用的示例代码或者演示项目。如果要深入了解Nashorn的使用,可以查看这个仓库中的文件,学习如何在实际项目中集成和使用...
纳斯霍恩(Nashorn)+Ruby这是一个完整的仓库,可以客观地认为是坏主意。要求JDK8建造该项目使用来解决依赖关系并正确设置环境。 因此,您需要执行的所有操作是: % ./gradlew 它将运行默认的演示服务器
**Nashorn JavaScript 引擎详解** Nashorn 是 Java 8 及更高版本中引入的一个内置 ...通过项目 `nashornexamples-master` 中的示例,开发者可以深入学习如何在实际项目中利用 Nashorn 实现更灵活、高效的编程。
在"java-nashorn-examples-master"这个压缩包中,你将找到各种实际的Java代码示例,展示了上述功能的用法,这对于理解和学习如何在Java项目中使用Nashorn引擎非常有帮助。通过深入研究这些示例,开发者可以更好地...
Nashorn脚本API片段 如果您在Java 8上运行AEM 6.1(或SP2或6.0),则可能要使用新的Nashorn JavaScript引擎来完成服务器端JS方面的工作。 不幸的是,即使nashorn.jar在系统类路径中,您也无法-OSGi容器中的捆绑包...
实现,请访问该项目。 更多详细信息可在 Eclair Nashorn 中获得。 从源代码构建 先决条件 (V1.6.0 为 Hadoop 2.6.0 及更高版本构建) git clone git@github.com:EclairJS/eclairjs-nashorn.git mvn package export ...
该项目演示了在浏览器和以Java运行的应用程序服务器之间共享验证逻辑。 除了客户端验证之外,还执行服务器端验证,以防止任何人尝试绕过客户端上JavaScript。 在服务器上,我们使用Nashorn执行与浏览器用来评分密码...
### JavaScript 代码优化示例分析 #### 背景与目的 在JavaScript开发过程中,代码优化是提升程序性能的...在实际项目开发中,开发者应根据项目的具体情况,灵活选择合适的优化策略,以达到最佳的性能和可维护性效果。