通过标准 JDK 11 使用 graalvm

2023-11-25

我有一个项目使用 Nashorn Javascript 引擎。我正在尝试迁移到 java11 并从 Nashorn 迁移到 Graal。我读了here我可以通过从 JDK 11 开始的标准 JDK 安装来使用 graal。此外,我还读到 Graal-SDK 已上传到 Maven 中心,并且有 Java 标志polyglot.js.nashorn-compat以便轻松迁移。所以我使用了jdk11,将maven依赖项添加到pom.xml并使用了java标志,但是当我尝试通过名称“graal.js”获取引擎时,我在这里得到了null:

ScriptEngine engine = engineManager.getEngineByName("graal.js")

我缺少什么?如何让它发挥作用?


以下是一个示例 Maven 项目,展示了如何通过脚本 API 和多语言 API 在 JDK11 上运行 GraalVM JavaScript 引擎。希望能帮助到你!

https://github.com/graalvm/graal-js-jdk11-maven-demo

其要点是添加必要的依赖项(graal-sdk、js、js-scriptengine 以及可选的探查器和 chromeinspector),使用启用的实验选项和 JVMCI 编译器运行(-XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI)并使用 graal jar 升级模块路径(--upgrade-module-path=${compiler.dir}/compiler.jar)也可以从 Maven 获得(org.graalvm.compiler:compiler).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过标准 JDK 11 使用 graalvm 的相关文章

随机推荐

  • LinkedIn 关注公司按钮显示空白页面

    我复制了代码这个链接通过提供公司名称并单击Get Code按钮 它生成了下面给出的代码 我将此代码粘贴到 html 文件的标签中 然后在 Chrome Firefox 和 IE 中运行该 html 文件 但所有浏览器都给出空白页面作为输出
  • 如何获取谷歌地图位置名称?

    我正在建立一个网站 需要获取所有谷歌地图位置 从国家名称到最小的村庄 这是api中的任何地方吗 因为它无处可寻 您需要解析响应以获取该数据 例如 如果您想获取国家 地区 结果是通过调用反向地理编码获得的结果对象 https develope
  • Xcode 9.1(和 9.2) - 引用的精灵不执行场景编辑器中添加的操作

    我在使用 SpriteKit 场景编辑器时遇到了一些意外的行为 想知道其他人是否也遇到同样的问题 我在场景中创建了一个精灵 并添加了动作以使用场景编辑器移动它 当我单击编辑器上的动画按钮时 动作运行良好 我使用场景编辑器中的 SKRefer
  • Delphi:如何在外部应用程序上正确使用ShowWindow [重复]

    这个问题在这里已经有答案了 也可以看看 如何判断我的程序的另一个实例是否已经在运行 我在启动应用程序之前使用以下代码来检查是否有另一个实例 其中已经开始 var PreviousHandle THandle begin PreviousHa
  • 适用于 .NET Framework 3.5 的 WebApi HttpClient [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 Net Framework 3 5 有可用的 WebApi 包吗 我特别期待使用 WebApi 的 HttpClient 组件 有没有适用于 Net
  • 泛型内存管理

    我对如何管理强类型泛型的内存有疑问 List
  • 为什么变量不更新?

    我目前正在编辑 AD 的新员工脚本 遇到了一个问题 我为主文件夹添加了 2 个单选按钮 一个单选按钮会将 BaseHomeFolderPath 更新为 Path1 第二个单选按钮会将其更新为 Path2 我导出变量到 csv 以验证它是否有
  • Spring 3.1中如何使用通配符加载xml资源文件

    我想加载 xml 文件 其中包含 Spring Maven 项目中多个模块的一些错误定义 我想加载文件 然后将其传递给 JAXB unmasheller 这就是我到目前为止所做的 String path classpath definiti
  • GC(分配失败)VS OutOfMemoryError异常

    内存不足错误 通常 当 Java 堆中没有足够的空间来分配对象时 会抛出此错误 GC 分配失败 分配失败 意味着存在大于年轻代可用空间的分配请求 这是否意味着年轻代内存已满 Minor GC 时会抛出Allocation Failure 而
  • BigQuery 通过查询获取表架构

    是否可以通过查询获取 BigQuery 表架构信息 就像是TABLES但对于模式 对 cli 方法不感兴趣 我想要实现的是在 2 个 BQ 表 比方说暂存和生产 之间执行 增量 更新 其具有基于 1 个 键 列的相同结构 但采用自动方式来创
  • 防止页面在新选项卡/窗口中打开

    我正在开发一个项目 当用户在新选项卡或新窗口中打开页面时 该项目的行为非常奇怪 导致应用程序崩溃 我需要一些 javascript 来帮助我防止这种情况 所以基本上我想阻止 ctrl 单击 鼠标中键 shift 单击 从上下文菜单在新选项卡
  • SQL 查找违反 UNIQUE 共同索引的行

    我想在表中的两个 或更多 列上放置唯一索引 但我得到 找到重复的键 如何选择那些导致重复的行 您可以使用Group By and Having为了这 SELECT col1 col2 FROM table GROUP BY col1 col
  • Github:权限被拒绝(公钥),但我收到“您已成功通过身份验证”消息

    我所做的步骤 https help github com articles generate ssh keys 完全遵循 eval ssh agent s Agent pid 31944 ssh add Enter passphrase f
  • 与 Mac 和 Linux 上的 exp 函数的结果略有不同

    以下 C 程序在我的 Mac 和 Linux 上产生不同的结果 我很惊讶 因为我认为实施libm以某种方式标准化 include
  • 使用 Exchangelib 将电子邮件标记为已读

    我正在使用Pythonexchangelib包裹 如何使用 Exchangelib 将电子邮件标记为已读 我已经看过了官方 GitHub Exchangelib 页面对于我的查询 但没有找到答案 要添加到 joe 的评论 您还必须 保存 该
  • Java Spring Boot 中的服务器端渲染 React

    我是服务器端渲染的新手 我想在服务器端渲染 React 组件并以 html 形式传递它 我按照本教程进行操作https spring io guides tutorials react and spring data rest 它仍在客户端
  • .NET 和 C# 初学者书籍? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我想做一个项目 使用 NE
  • GUI 元素在调整窗口大小之前不会显示

    我一直在尝试用 java 制作 GUI 而不是一直使用 静态 并遇到了 SwingUtilities invokeLater 方法 我设法完成所有设置 但在运行应用程序时 JPanel 上什么也没有出现 直到我调整窗口大小 有解决这个问题的
  • make:并行运行多个任务并等待完成

    我的 makefile 中的一个目标是一项非常消耗 CPU 和时间的任务 但我可以拆分工作负载并并行运行该任务多次 以加快整个过程 我的问题是 make 不会等待所有进程完成 考虑这个简单的脚本 名为myTask sh bin bash e
  • 通过标准 JDK 11 使用 graalvm

    我有一个项目使用 Nashorn Javascript 引擎 我正在尝试迁移到 java11 并从 Nashorn 迁移到 Graal 我读了here我可以通过从 JDK 11 开始的标准 JDK 安装来使用 graal 此外 我还读到 G