问题标签 [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.

0 投票
0 回答
624 浏览

scala - 在 Intellij 中使用带有 sbt 的 GraalVM 需要哪些设置?

我想在我的 Scala 项目和 sbt 中使用 Intellij 中的 graalvm。在我的 build.sbt 中,我设置了这个:

我的路径中有我的 graalvm,当我运行“java -version”时看到这个:

所以我也尝试了“1.8.0_202”。sbt 和 Intellij 都不喜欢这些设置。

完成这项工作需要什么?

0 投票
1 回答
66 浏览

clojure - 从 graalvm 编译的图像没有打印到标准输出

Graalvm 版本:graalvm-ce-19.0.0

Clojure 版本:Clojure 1.10.0

Java 11.0.2 OpenJDK 64 位服务器 VM 上的 Leiningen 2.9.0

如果我运行,在我的项目(https://github.com/slifin/beeline )中

lein run "{\":select\" [\":b\"]}"

我明白了

["SELECT b"]

正如我所料,但如果我这样做

lein native-image

并运行

./beeline-0.1.0-SNAPSHOT "{\":select\" [\":b\"]}"

虽然我知道我的程序正在运行,但我没有得到任何输出,因为如果我更改输入,我会收到对我的程序有意义的错误,是什么阻止它打印?

0 投票
1 回答
61 浏览

compiler-optimization - GraalVM:如何实现编译器优化?

我想开发一个基于程序结构在程序中执行某些优化的工具。例如,假设我想在一个循环中识别 if-else,我的工具会将其重写为两个循环。我希望该工具能够使用多种语言重写程序,例如 Java、C++、Python、Javascript 等。

我正在探索是否可以将 GraalVM 用于此目的,以充当我可以为各种语言实现相同优化的通用平台。

GraalVM 是否具有通用的中间表示(类似于 LLVM IR)?我查看了文档,但不确定从哪里开始。任何指针?

注意:我不是在寻找语言之间的互操作性。您可以假设我要重写的程序是用一种语言编写的;不同程序的语言可能不同。

0 投票
2 回答
1340 浏览

java - 在镜像运行时初始化或重新初始化的类的镜像堆中不允许有实例:sun.security.provider.NativePRNG

我在尝试编译为本机时遇到了一个非常奇怪的错误。这是错误:

我认为这个日志说明了很多关于错误的信息: Error: No instances are allowed in the image heap for a class that is initialized or reinitialized at image runtime: sun.security.provider.NativePRNG

我在 GraalVM 的 Github 存储库中发现了一些问题。 https://github.com/oracle/graal/issues/712

Delay class initialization我想我应该在https://quarkus.io/guides/writing-native-applications-tips做点什么

所以,我写了这段Java代码:

但它不起作用。

0 投票
3 回答
871 浏览

graalvm - 如何将 Map 从 Java 传递到 graal.js?

我在 Scala/Java 中有一个 Map 我希望在 graal.js 引擎上运行的 Javascript 中可见。

后来,graal.js 中的一个 Javascript 函数被调用:

其中 bindFn 是一个编译函数(如下),而 args 是一个包含我的 Thing 对象的 1 元素列表。

Javascript:

thing.foo() 的输出有效,但所有其他输出在 Javascript 中解析为“foreign {}”。它们在地图中都没有任何值。

如何获取在 graal.js Javascript 代码(最好是原生到 Javascript)中可见的 JVM 上创建的 Map 数据?

0 投票
1 回答
811 浏览

javascript - 使用 GraalVM 的 JavaScript 代码中的 Java 对象是“未定义的”

我正在使用 GraalVM 与 JavaScript 进行互操作,因为Nashorn 将被弃用

问题是我的变量undefined在 JavaScript 运行时中。

这是我正在运行的 JavaScript 代码:

POM 依赖项:

0 投票
1 回答
498 浏览

apache-kafka - Quarkus Kafka 消费者不能在本机模式下工作

我有一个 Quarkus Kafka 消费者。在 VM 模式下,它运行良好。

在我使用以下命令构建本机运行程序之后: ./mvnw package -Pnative

当我在本机模式下运行它时,我有这个异常:

0 投票
2 回答
1190 浏览

java - Hibernate ORM 是否兼容 GraalVM 原生镜像编译?

根据文档,GraalVM 项目中的本机图像编译器对动态代理有一些限制。由于 Hibernate 大量使用了代理,它是否可以在提前编译好的项目中正常工作?

Quarkus项目似乎表明可以,但我的理解主要是基于Reddit 的一篇帖子

Hibernate ORM 现在即使编译为 GraalVM 原生镜像也可以工作 - 只需确保使用 Quarkus 构建应用程序。

如果我不想(或不能)使用 Quarkus 怎么办?是否可以使用使用 Hibernate 的 GraalVM(和 SubstrateVM)编译本机映像应用程序?

Quarkus 实际上了什么来启用/支持 Hibernate?

0 投票
1 回答
289 浏览

clojure - 在 AWS Lambda 自定义运行时运行 Clojure GraalVM 原生映像

有没有一种简单的方法可以将使用 GraalVMnative-image工具编译的 Clojure 应用程序部署到 AWS Lambda 自定义运行时?

0 投票
1 回答
252 浏览

docker - container_linux.go:247:无效的标头字段值 - 权限 > 被拒绝 - OpenShift 上的 Quarkus 本机映像问题

我正在尝试在 Openshift 3.x 上运行 Quarkus 本机映像应用程序。

我按照 Quarkus 的说明在 Fedora 机器上生成了本机映像:

./mvnw package -Pnative

我已经验证生成的二进制文件在 Fedora 机器上运行正常:

然后我将该图像插入到 Docker 容器中:

我在 Openshift 中构建映像,部署容器时失败:

错误:无法启动容器“quarkus-native-ms-users”:来自守护进程的错误响应:{“message”:“无效的标头字段值\”oci运行时错误:container_linux.go:247:启动容器进程导致\\” exec: \\\\"./application\\\\": 权限被拒绝\\"\n\""}

这张图片有什么问题?