You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行Gluon Sample的HelloFX报Failed to execute goal构建错误咨询

问题修复:HelloFX构建失败

从栈追踪信息可以确定报错根因是JavaFX运行时组件缺失,可按以下步骤修复:

  • 先执行Maven命令补全依赖:mvn clean dependency:copy-dependencies,排除依赖拉取不全的问题
  • 检查NetBeans项目运行配置:右键项目->属性->运行,确认主类为com.gluonhq.samples.hellofx.HelloFX,在VM选项栏添加参数:--module-path ${project.build.directory}/dependency --add-modules javafx.controls,javafx.fxml,javafx.graphics
  • 优先使用Gluon专属命令运行:在NetBeans的Maven目标栏执行mvn gluonfx:run,该命令由Gluon官方插件适配,默认会自动匹配JavaFX运行时,不需要手动配置模块路径。
疑问解答

1. Maven配置的Gluon和本地GraalVM是否会产生冲突

不会产生冲突:

  • Gluon的substrate插件本身不内置独立的GraalVM环境,仅会调用你本地JAVA_HOME指向的GraalVM执行原生编译逻辑,pom.xml中配置的仅为插件版本、编译参数等规则,不会和本地GraalVM产生覆盖。
  • 唯一需要注意的适配规则:pom.xml中配置的gluonfx-maven-plugin版本需要和本地GraalVM大版本匹配,你当前使用的graalvm-ce-java16-21.2.0搭配1.0.0及以上版本的gluonfx插件即可正常运行。

2. HelloFX中添加Java-JavaScript互操作的实现步骤

GraalVM默认内置GraalJS引擎,不需要额外引入第三方JS运行时,按以下步骤配置即可:

  1. 在pom.xml中添加GraalJS相关依赖:
<dependency>
    <groupId>org.graalvm.js</groupId>
    <artifactId>js</artifactId>
    <version>21.2.0</version>
</dependency>
<dependency>
    <groupId>org.graalvm.js</groupId>
    <artifactId>js-scriptengine</artifactId>
    <version>21.2.0</version>
</dependency>
  1. 业务代码中实现互操作逻辑,示例如下:
import org.graalvm.polyglot.Context;
import org.graalvm.polyglot.Value;

// 业务逻辑调用位置
try (Context jsContext = Context.create()) {
    // Java调用JS代码执行运算
    Value calculateResult = jsContext.eval("js", "5 * 8 + 2");
    System.out.println("JS执行结果:" + calculateResult.asInt());

    // JS调用Java侧传入的对象
    jsContext.getBindings("js").putMember("javaInput", "来自Java的参数");
    jsContext.eval("js", "console.log('收到Java传递的内容:' + javaInput)");
}
  1. 如果需要打包为原生镜像,需要在pom.xml的gluonfx-maven-plugin配置项中添加适配规则:
<configuration>
    <reflectionList>
        <list>com.oracle.truffle.js.scriptengine.GraalJSScriptEngine</list>
    </reflectionList>
    <resourcesList>
        <list>js.*</list>
    </resourcesList>
</configuration>

配置完成后执行mvn gluonfx:build即可生成包含JS互操作能力的原生包。

内容的提问来源于stack exchange,提问作者Fred Little

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 17:54:03