Apache Ant 与 Graal VM

2023-12-09

我们将 Apache Ant 与 Nashorn JavaScript Engine 结合使用,该引擎在 jdk 15 及更高版本中已弃用并删除。我试图找到如何从 Nashorn 切换到 Graal VM,但即使在 Apache 网站上也没有找到任何可用的信息。请告知我需要哪些罐子以及我应该放置它们。我们的代码需要改变什么。如果有人已经这样做了,请分享您的经验。 我有一个针对 jdk1.8.0_311 运行的示例:

<?xml version="1.0" ?>
<project name="test" default="test">
    <property environment="env"/>   
    <target name="test" >
        <script language="javascript">          
            <![CDATA[
            load("nashorn:mozilla_compat.js");
            importPackage(java.time);
            var today = new Date();
            var date = today.getFullYear()+'-'+(today.getMonth()+1)+'-'+today.getDate();
            self.log("This script is for Test Of Nashorn Javascript Engine");
            print ("Today is: " + date );
            ]]>
        </script>
    </target>
</project>

结果看起来像:

test:
   [script] Warning: Nashorn engine is planned to be removed from a future JDK release
   [script] This script is for Test Of Nashorn Javascript Engine
   [script] Today is: 2021-11-3

BUILD SUCCESSFUL
Total time: 0 seconds

解决方案1

如果您使用的是 JDK 15 或更高版本。请将以下 jar 添加到路径中。

  • Openjdk nashorn jar
  • asm jar
  • asm 实用程序 jar

enter image description here

解决方案2

使用 Graal VM Jas

  • graal-sdk-22.3.1.jar
  • icu4j-72.1.jar
  • js-22.3.1.jar
  • js-scriptengine-22.3.1.jar
  • 启动器-common-22.3.1.jar
  • 正则表达式-22.3.1.jar
  • truffle-api-22.3.1.jar

使用上面的 jar 并将它们作为类路径引用传递。

enter image description here

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

Apache Ant 与 Graal VM 的相关文章

随机推荐

  • 意外的 Class.getMethod 行为

    不久前我有一个类似的问题当使用 Class getMethod 和自动装箱时 在您自己的查找算法中实现它是有意义的 但真正让我有点困惑的是以下内容也不起作用 public class TestClass public String doSo
  • 仅使用 JavaScript 选择随机 HTML 元素

    我正在尝试从 HTML 代码中选择一个元素 然后在 JavaScript 中使用它 需要突出显示 HTML 由一个包含 36 个 td 的表格组成 到目前为止我的代码 var box function getRandom return Ma
  • android获取嵌套在数组中的json数组

    就像是这个问题 如何保存在变量中 但是用这个 json 代码 restarutant name Hotel Raja photo http i imgur com Mzt4u jpg address 93 2ndc ross GDP etx
  • ASP.NET 2 项目共享相同的文件

    正如标题所说 我有 2 个 Web 项目 它们具有相同的 css 文件 母版页和一些资源文件 我如何共享这些文件 atm 我有 2 份 解决方案1 将它们绑定到单独的程序集中 以便在您的项目中共享 参考 使用 Visual Studio 2
  • Java:如何为 TextField 执行“onclick”?

    我想让我的文本字段在有人单击它时清除文本 我怎样才能做到这一点 on java awt TextField你可以添加一个MouseListener like so TextField field new TextField field ad
  • VB6 的 ORM/MDA/UML 工具

    我知道 Rational Rose 我们有 Rational Rose 6 但我正在寻找一些其他更有用的工具 它们不会抱怨它们不能在 Windows 98 2000 中运行 当在 WinXP 中安装和运行时 并且与 Rational Ros
  • MySQL JOIN 忽略 NULL 值

    我有以下带有 JOIN 的 SQL 如果我运行它 它会忽略 users 表中的 group id 中具有 NULL 值的记录 因此 我得到的结果较少 SELECT u user id u email g group name FROM us
  • 使用 Python 将 CSV 文件上传到 Google Cloud Storage

    我需要使用 Python 自动将本地 csv 文件上传到 Google Cloud 存储桶中 我可以使用哪个 Python 库 任何示例代码将不胜感激 我们可以使用google python客户端api将文件上传到google云存储 首先
  • iPhone 5 中的定位服务进入“非活动”状态

    甚至我的应用程序也在后台注册位置更新 在我的代码中 self locationManager desiredAccuracy kCLLocationAccuracyThreeKilometers self locationManager d
  • C中使用scanf()连续读取两个字符

    我正在尝试输入用户的两个字符t次数 这是我的代码 int main int t scanf d t char a b for i 0 i
  • 通过 Paramiko 从 SFTP 服务器将 CSV 文件读入 Pandas 失败,并显示“'utf-8'编解码器无法解码字节...在位置...:无效的起始字节”

    我正在尝试使用 Paramiko 从 SFTP 服务器将 CSV 文件读入 Pandas with sftp open path file filename as fp fp aux pd read csv fp separator 但是当
  • 菜单元素的 ListView 信号和槽

    我正在尝试使用自定义元素实现某种自定义菜单 最终目标是创建某种带有文本和图标的弹出菜单 但在创作过程中我遇到了一些问题 我可以展示两个主要问题 有一个带有标题的奇怪菜单元素Hello world在第一个位置 看起来像是读取应用程序窗口的标题
  • 当我们显式调用 Finalize() 时,对象内存是否被释放? [复制]

    这个问题在这里已经有答案了 据我的理解 finalize 和 GC 是两个不同的方面 GC使用finalize 方法来释放Object内存 我们无法说明 GC 何时发生 即使我们显式调用 System gc 但我们可以在对象上显式调用 Fi
  • 在 PowerShell 中迭代 PSObject 属性

    我有这个PSObject 来自 XML bool IsActive ShowOnB2C ShowOnB2B IsWebNews str id ProductId GroupName Unit int ProductIdNumeric Pri
  • 无对话发送 Facebook 应用请求

    由于可以使用 FB api Id feed 在没有请求对话框的情况下在用户墙上发布内容 是否可以通过 FB api 向用户发送应用请求 而不是 FB ui apprequests 谢谢您的回答 我真的需要帮助 我已经四处寻找了几个星期 您可
  • SVG CSS 悬停样式

    尝试使用 CSS 对该多色 HTML 图像的 SVG 进行样式化 以便 5 的右侧在悬停时为白色 body background color gray svg height 50vh fill white html5 g st2 st0 f
  • 在 OpenLayers (KML) 中刷新/重绘图层网络链接自动刷新

    TLDR我想刷新计时器上的图层 以便它绘制新的 kml 数据 如更新链接 网络链接 到目前为止 我已经尝试过操作功能如下 function RefreshKMLData layer layer loaded false layer setV
  • 如何通过事务以多模型形式显示错误消息?

    组织和用户这两个模型具有一对多关系 我有一个组合注册表单 其中一个组织加上该组织的用户进行了注册 我遇到的问题是 当为用户提交无效信息时 它会再次呈现表单 但不会显示用户的错误消息 例如 用户名不能为空 当提交有效信息时 该表单确实有效 并
  • 如何使用反向代理来绕过 X-Frame-Options: SAMEORIGIN for iframe

    我正在努力解决某些页面上的 X Frame Options SAMEORIGIN 限制 以便我可以将它们放入 iframe 中 我知道可以使用反向代理服务器来解决这个问题 但我不确定如何做 我需要的是为一些大厅监视器创建一个触摸屏界面 这些
  • Apache Ant 与 Graal VM

    我们将 Apache Ant 与 Nashorn JavaScript Engine 结合使用 该引擎在 jdk 15 及更高版本中已弃用并删除 我试图找到如何从 Nashorn 切换到 Graal VM 但即使在 Apache 网站上也没