问题标签 [graalvm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 将 Nashorn 迁移到 GraalVM
我正在使用来自 OpenJDK 12 的 Nashorn JS 引擎。Nashorn 似乎已被弃用。我正在寻找哪些是可用的替代品。我找到了 GraalVM,但我不确定这是否是最好的。如何从 Java 执行 GraalVM JavaScript?你有什么例子吗?
使用 Nashorn 从 Java 中使用:
在 Nashorn 中,我创建了一个 WrappedMongoDatabase,它扩展了 AbstractJSObject。在那里我添加了一些“虚拟”方法来模拟 MongoDB 查询语言,例如 getCollection('persons').find()... 你知道在 GraalVM 中替换 AbstractJSObject 的方法吗?
我看了一下ProxyObject,不知何故我找不到像AbstractJSObject中那样覆盖调用(Object thiz,Object ... args)的方法。
java - Python 作为 graalvm 中的“宿主”语言
我正在尝试使用 graalvm 从 Python 代码访问 Java 对象。有人可以指出我的示例代码吗?本质上,我希望能够运行 graalpython --polyglot --jvm myscript.py 其中 myscript.py 能够实例化 Java 对象
我已经浏览了 graalvm 文档,并且我发现的唯一示例从 Python 代码实例化 Java 数组(见下文)我还浏览了此链接中的多语言示例 https://www.graalvm.org/docs/参考手册/嵌入/#access-java-from-guest-languages,它本质上运行 Java polyglot API,它运行访问 java 对象的 python 代码,但这不是我想要的。
下面的代码示例来自此链接,其中还提到“并访问除 Java 数组之外的其他类,需要重新编译图像并提供反射配置文件”,但我不太明白如何做到这一点。
我尝试将上面的代码修改为:
我得到了以下o/p:
spring - GraalVm 与 Spring MVC
我可以用 graalvm 运行 spring mvc 项目吗?
(Spring MVC 项目而不是 Spring Boot)
如果是:是否有任何性能改进?(任何带有 graalvm 的 spring mvc 示例都会有所帮助。)
如果否:为什么?
maven-plugin - 使用 native-image-maven-plugin 构建 GraalVM 错误
我正在尝试使用native-image-maven-plugin
来构建 Java 项目,但出现以下错误:
javascript - 如何在 Java 中使用 GraalVM?类未找到异常
但我在线程“main”java.lang.NoClassDefFoundError: jdk/vm/ci/services/Services 中遇到异常
我通过 Maven 包含了 GraalVM
在这个最小示例中引发了相同的异常
绒球
我正在使用 jdk-12.0.1(Open JDK)并在 Windows 10 计算机上工作。
我在互联网上的某个地方发现了这个
应作为 VM 参数包含在内。当我这样做时,异常更改为:
线程“主”java.lang.IllegalAccessError 中的异常:类 org.graalvm.compiler.truffle.runtime.hotspot.AbstractHotSpotTruffleRuntimeAccess(在未命名模块 @0x2d8e6db6 中)无法访问类 jdk.vm.ci.services.Services(在模块 jdk. internal.vm.ci) 因为模块 jdk.internal.vm.ci 不会将 jdk.vm.ci.services 导出到未命名的模块 @0x2d8e6db6
也许模块有问题:modules-info.java
graalvm - GraalVM/Polyglot:如何以编程方式获取 SourceLocation
有没有办法从java获取当前源位置(SourceSection)?
例如通过 context.eval() 执行的 js 脚本调用 java 方法,java 方法记录当前 js 脚本名称+行
PolyglotException 有一个提供此信息的 getSourceLocation()。来自 polyglot 的堆栈跟踪似乎包含有关源位置的信息,例如:program(Unnamed:2:23-53)
micronaut - 本机映像构建失败并出现错误:找不到主入口点类“io.micronaut.function.aws.runtime.MicronautLambdaRuntime”
我有一个可以在我的本地环境中正常运行的 Micronaut 应用程序。我现在正在尝试为它构建 Docker 映像。
构建失败并出现以下错误:
但是,我检查了我的项目的项目和外部依赖项是否有micronaut-function-aws-custom-runtime
jar
这是build-native-image.sh文件:
堆栈跟踪:
我不确定是什么导致了这个错误。任何帮助表示赞赏!
java - 使用 GraalPython 作为 Jython 替代品
我想知道是否可以使用GraalPython作为 Java 库来解释标准 JVM 上的 Python 代码。如果是这样,替换Jython(仅支持 Python 2.7)会是一个不错的选择吗?
如果在不导入整个 GraalVM 项目的情况下可以做到这一点,那就太好了。我希望只有Truffle和基于它构建的 Python 解释器是必要的。
如果这是不可能的,是否有任何好的 Python 3 可用的 Java 实现?
java - 类不使用 GraalVM native-image 实现 Quarkus 项目的 org.graalvm.nativeimage.hosted.Feature 错误
我正在尝试使用 GraalVM 和 Maven 将示例Quarkus项目编译为本机映像。这是我的 Quarkus 服务的代码:
当我像往常一样编译它时,mvn package
一切顺利。但是当我尝试将其编译为本机图像时,mvn package -Pnative
我得到了这样的错误:
错误:类没有实现 org.graalvm.nativeimage.hosted.Feature:io.quarkus.runner.AutoFeature
是什么原因,我该如何解决?我使用 GraalVM 19.1.1 和 Quarkus 0.13.1。
graalvm - 是否可以在 GraalVM 19.11 上像 REPL 一样运行 JShell?
我尝试在 GraalVM 上执行几行 Java 和 JavaScript 代码。我将 REPL 用于 JavaScript 和节点。它工作得很棒,但我找不到 jshell REPL 来运行 java 代码。当我参考https://www.graalvm.org/docs/getting-started/文件时。我看到下面运行java代码的方法。
GraalVM 19.1.1 基于 JDK 版本 8u222,而 jshell 是从 JDK 9 开始引入的。我希望将来 GraalVM 可以容纳 jshell REPL。
是否可以在 GraalVM 上运行 jshell REPL?是否有任何其他工具可用于在 GraalVM 上运行 jshell REPL?