Windows 上 JavaFX 的 Gluon 客户端 Maven 插件无法编译?

2024-03-30

我一直在 Windows 机器上为我的一个项目试验 Gluon 的客户端 Maven 插件。我决定尝试一下他们的“hello world”示例之一,here. https://github.com/gluonhq/client-samples我遵循了如何配置机器的所有步骤。

但是,我遇到了一些错误。由于某种原因,编译总是失败并给出错误“无法运行程序“cl””。有谁知道如何解决这个问题?

我正在“VS 2019 的 x64 本机工具命令提示符”窗口中运行 client:build 命令。

日志如下:

java.io.IOException: Cannot run program "cl" (in directory "C:\Users\Evan\Documents\client-samples\Maven\HelloFXML\target\client\x86_64-windows\gvm\hellofxml"): CreateProcess error=2, The system cannot find the file specified
        at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)
        at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)
[INFO] ------------------------------------------------------------------------
        at com.gluonhq.substrate.util.ProcessRunner.setupProcess(ProcessRunner.java:336)
[INFO] BUILD FAILURE
        at com.gluonhq.substrate.util.ProcessRunner.runProcess(ProcessRunner.java:194)
[INFO] ------------------------------------------------------------------------
        at com.gluonhq.substrate.target.AbstractTargetConfiguration.compileAdditionalSources(AbstractTargetConfiguration.java:330)
[INFO] Total time:  2.860 s
        at com.gluonhq.substrate.target.AbstractTargetConfiguration.compile(AbstractTargetConfiguration.java:130)
[INFO] Finished at: 2020-06-02T17:37:39-04:00
        at com.gluonhq.substrate.SubstrateDispatcher.nativeCompile(SubstrateDispatcher.java:414)
[INFO] ------------------------------------------------------------------------
        at com.gluonhq.NativeCompileMojo.execute(NativeCompileMojo.java:54)
[ERROR] Failed to execute goal com.gluonhq:client-maven-plugin:0.1.26:compile (default-cli) on project hellofxml: Error: Cannot run program "cl" (in directory "C:\Users\Evan\Documents\client-samples\Maven\HelloFXML\target\client\x86_64-windows\gvm\hellofxml"): CreateProcess error=2, The system cannot find the file specified -> [Help 1]
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
[ERROR]
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210)
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156)
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
[ERROR]
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
[ERROR] For more information about the errors and possible solutions, please read the following articles:
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:193)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
        at java.base/java.lang.ProcessImpl.create(Native Method)
        at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:420)
        at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:151)
        at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1107)
        ... 29 more
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  5.141 s
[INFO] Finished at: 2020-06-02T17:37:39-04:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.gluonhq:client-maven-plugin:0.1.26:build (default-cli) on project hellofxml: Error, client:build failed -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

当我将 C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.25.28610\bin\HostX64\x64 添加到我的系统路径时,该插件在日志中给出以下错误。 (我在管理模式下运行此命令)

[Tue Jun 02 18:28:07 EDT 2020][INFO] ==================== COMPILE TASK ====================
[Tue Jun 02 18:28:08 EDT 2020][FINE] PB Command for check version: D:\graalvm-ce-java11-20.2.0-dev\bin\java -version
[Tue Jun 02 18:28:08 EDT 2020][FINE] Start process check version...
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] openjdk version "11.0.7" 2020-04-14
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] OpenJDK Runtime Environment GraalVM CE 20.2.0-dev (build 11.0.7+10-jvmci-20.1-b02)
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] OpenJDK 64-Bit Server VM GraalVM CE 20.2.0-dev (build 11.0.7+10-jvmci-20.1-b02, mixed mode, sharing)
[Tue Jun 02 18:28:09 EDT 2020][FINE] Result for check version: 0
[Tue Jun 02 18:28:09 EDT 2020][INFO] We will now compile your code for x86_64-microsoft-windows. This may take some time.
[Tue Jun 02 18:28:09 EDT 2020][FINE] Extracting native libs to: C:\Users\Evan\Documents\client-samples\Maven\HelloFXML\target\client\x86_64-windows\gvm\lib
[Tue Jun 02 18:28:09 EDT 2020][FINE] Looking for resource: /native/windows/launcher.c
[Tue Jun 02 18:28:09 EDT 2020][FINE] PB Command for compile-additional-sources: cl -c -DSUBSTRATE /MD /D_UNICODE /DUNICODE /DWIN32 /D_WINDOWS -IC:\Users\Evan\Documents\client-samples\Maven\HelloFXML\target\client\x86_64-windows\gvm\hellofxml launcher.c
[Tue Jun 02 18:28:09 EDT 2020][FINE] Start process compile-additional-sources...
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] Microsoft (R) C/C++ Optimizing Compiler Version 19.25.28610.4 for x64
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] Copyright (C) Microsoft Corporation.  All rights reserved.
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] 
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] launcher.c
[Tue Jun 02 18:28:09 EDT 2020][FINE] [SUB] launcher.c(28): fatal error C1083: Cannot open include file: 'stdio.h': No such file or directory
[Tue Jun 02 18:28:09 EDT 2020][FINE] Result for compile-additional-sources: 2
[Tue Jun 02 18:28:09 EDT 2020][SEVERE] Process compile-additional-sources failed with result: 2
Check the log files under C:\Users\Evan\Documents\client-samples\Maven\HelloFXML\target\client\x86_64-windows\gvm\log
And please check https://docs.gluonhq.com/client/ for more information.
[Tue Jun 02 18:28:09 EDT 2020][INFO] Logging process [compile-additional-sources] to file: C:\Users\Evan\Documents\client-samples\Maven\HelloFXML\target\client\log\process-compile-additional-sources-1591136889122.log
[Tue Jun 02 18:28:09 EDT 2020][SEVERE] Compiling failed.
Check the log files under C:\Users\Evan\Documents\client-samples\Maven\HelloFXML\target\client\x86_64-windows\gvm\log
And please check https://docs.gluonhq.com/client/ for more information.

这些是我安装的 VS 2019 组件。 https://i.stack.imgur.com/XeuTA.png


我也遇到过同样的两个问题:

  1. 无法执行 cl 操作
  2. 找不到 stdio.h 或类似文件

第一个问题的解决方案(作者已经解决了):

确保系统路径包含 Visual Studio 条目。类似于“C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.25.28610\bin\HostX64\x64”

Visual Studio 有时在安装时似乎会错过路径变量中的条目。我已将其安装到不同的目录。这可能会导致问题。

第二个问题的解决方案:

The 文档 https://docs.gluonhq.com/#_create_run_a_native_image_of_the_application指出如果在 Windows 上运行,则必须在本机工具命令提示符中运行所有 maven 或 gradle 命令。我在阅读文档时错过了几次这部分。

如果您在 Windows 上运行,则需要从 x64 终端运行所有客户端目标。

之后我就能够使用 client:compile 和 client:link 目标。

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

Windows 上 JavaFX 的 Gluon 客户端 Maven 插件无法编译? 的相关文章

随机推荐

  • Windows 8 下的 WPF 和 Silverlight 的未来会怎样?

    看到首次发布 HTML5 JS Windows 8 GUI http windows8news com 2011 06 02 microsoft unveil windows 8 tablet ui 大量的WPF 和 Silverlight
  • 如何在 pycaffe 中获取图层类型?

    是否有可能在 pycaffe 中获取每一层的类型 例如 卷积 数据等 我搜索了提供的示例 但找不到任何内容 目前我正在使用图层名称来完成我的工作 这是非常糟糕和有限的 这很容易 import caffe net caffe Net path
  • 使用curl PHP获取gzip压缩的XML文件时出现问题

    我正在尝试使用curl 从 xml gz 文件中获取数据 我可以下载该文件 但我的任何尝试都无法获取可用的 XML 当我尝试打印 XML 时 我收到一长串乱码特殊字符 例如 r 7 E i 5 6 DL u 有没有一种简单的方法来解压缩和编
  • Ruby 模除法

    所以我用一个模块编写了一个在 Ruby 中进行模除法的程序 module Moddiv def Moddiv testfor op1 op2 return op1 op2 end end Program require mdivmod pr
  • 让 UIButton 充当导航控制器

    如何使常规 UIButton 充当导航控制器 以便按下它时我可以打开一个新视图 按照以下方式在 viewDidLoad 方法中创建 yourButton UIButton yourButton UIButton buttonWithType
  • bitbucket-pipelines.yml 文件中的部署环境“暂存”在管道中多次出现

    我正在尝试让 Bitbucket Pipelines 执行定义部署区域的多个步骤 当我这样做时 我收到错误 配置错误您的部署环境 暂存 bitbucket pipelines yml 文件在管道中出现多次 请参阅我们的文档以了解有效的环境及
  • 在 Play 应用程序中启动时调用服务

    我有一个 Play 2 4 应用程序 尝试在应用程序启动时启动每周任务 当前的建议是在急切注入的类的构造函数中执行此操作 Guice 但是 我的任务需要访问服务 如何将该服务注入到我的任务中而不出现错误 Error injecting co
  • iOS 10 问题:即使设置了 ContentSize,UIScrollView 也不滚动

    UPDATE 这是 iOS 10 的问题 这在 iOS 9 中仍然像以前一样有效 当你设置时它就会起作用contentSize在主线程上并将此代码放入 void viewDidLayoutSubviews void viewDidLayou
  • Excel COUNTIF 特殊字符

    是否可以计算整列中的特定特殊字符 我正在尝试数所有逗号 在一个专栏中 这就是我正在使用的 COUNTIF D3 D45 问题是这仅计算单元格中单独的逗号 如果我在单元格中添加任何其他内容 在逗号之前或之后 则不会计数 我正在计数的细胞示例
  • Datanode 在单机上的 Hadoop 中失败

    我使用以下教程在 ubuntu 12 04 LTS 上设置并配置了 sudo 节点 hadoop 环境http www michael noll com tutorials running hadoop on ubuntu linux mu
  • 哪些事件附加到元素?

    如何接收附加到元素的所有事件dojo http dojotoolkit org dojo query mydiv which events does mydiv has 获取 DOM 元素上的所有事件 Get my div myDiv do
  • 复制时谁负责释放数组中的对象?

    在 Objective C 中 如果使用 mutableCopy 将 array1 复制到 array2 并且假设代码在 main 中完成 那么谁负责释放数组中包含的对象 是main 还是array2 我觉得前面的回答都没有抓住重点 或者说
  • 困惑:SQLiteOpenHelper onUpgrade() 的行为如何?并与旧数据库备份一起导入?

    假设我有一个包含 2 列的数据库表 test table 以及 SQLiteOpenHelper 中相应的创建脚本 DB VERSION 1 public void onCreate SQLiteDatabase db db execSql
  • Erlang中如何维护状态?

    我见过人们使用口述 命令 记录用于维护我读过的许多博客中的状态 我发现这是一个非常重要的概念 一般来说 我理解维护状态和递归的含义 但是当涉及到 Erlang 时 我对它的处理方式有点模糊 有什么帮助吗 维护状态的最简单方法是使用gen s
  • 在 Python 中迭代 Stern-Brocot 树的部分内容

    我的目标是迭代 a b a 与 b 的互质对并且 a b我的第一个想法是使用 Stern Brocot 树的递归函数 def Stern Brocot n a 0 b 1 c 1 d 1 if a b c d gt n return 0 x
  • Android BOOT_COMPLETED 事件未启动服务

    我正在编写一个小型 Android 应用程序 它在设备启动时启动我的服务 应用程序在所有 Android 版本 4 4 2 Mi Note 4G 必须在其安全应用程序中启用权限 5 0 Lenovo K3 Note 5 1 一加一 6 Ne
  • Windows 上的 qmake 触摸功能

    qmake 手册记录了touch更新文件时间戳的函数 请参阅 触摸 文件名 参考文件名 http doc qt io qt 5 qmake test function reference html touchfunction 推荐here
  • 如何使用 Firebase 通过我的 Android 应用程序保持用户持续登录

    我目前正在使用 Android Studios 编写一个使用 Firebase 的应用程序 我的问题是 当我登录时 如何在应用程序的整个生命周期中保持该状态 直到我选择注销 到目前为止我在 MainActivity 中做了什么 IN MAI
  • C++ AMP 目前的状况如何

    我正在使用 C 编写高性能代码 并且一直在使用 CUDA 和 OpenCL 最近还使用我非常喜欢的 C AMP 然而 我有点担心它没有得到发展和扩展 并且会消亡 让我产生这个想法的是 即使是 MS C AMP 博客也已经沉默了大约一年 查看
  • Windows 上 JavaFX 的 Gluon 客户端 Maven 插件无法编译?

    我一直在 Windows 机器上为我的一个项目试验 Gluon 的客户端 Maven 插件 我决定尝试一下他们的 hello world 示例之一 here https github com gluonhq client samples我遵