Gluon 示例 HelloFX 构建错误(未生成类文件)

问题描述 投票:0回答:0

我正在尝试运行: 〜/ gluon-samples/HelloFX$mvn -Pandroid gluonfx:包 在 Windows 10 Virtualbox 上的虚拟 Ubuntu 22.0.4 上,在 WSL2 上失败后。

安装在Ubuntu中:

  • Maven 3.8.8
  • GraalVM 22.1.0.1
  • openjdk 17.0.3
  • Gluonfx Maven Plugin 1.0.19(不确定如何安装,只是解压)

我克隆了 gluon-samples,我所做的唯一更改是在 HelloFX 的 pom.xml 中,按照 文档说明 将 ${gluonfx.target} 更改为 android。我设置了以下环境变量:

JAVA_HOME = /home/grace/Downloads/graalvm-svm-java17-linux-gluon-22.1.0.1-Final/
GRAALVM_HOME = /home/grace/Downloads/graalvm-svm-java17-linux-gluon-22.1.0.1-Final/
M2_HOME=/home/grace/Downloads/apache-maven-3.8.8
PATH=/home/grace/Downloads/apache-maven-3.8.8//bin:/home/grace/Downloads/graalvm-svm-java17-linux-gluon-22.1.0.1-Final//bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/grace/Downloads/jdk-17.0.8/bin

我完全迷失了。我在 HelloFX 中运行了 pandroid build 命令,它手动安装了 Android SDK 和 NDK 以及其他一些东西,但它抱怨缺少 NDK 目录:

“无法在项目 hellofx 上执行目标 com.gluonhq:gluonfx-maven-plugin:1.0.19:compile (default-cli):错误:您指定了 android NDK,但它不包含 /home/grace/。 gluon/substrate/Android/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/ld.lld -> [帮助 1] [错误]”

从这个post在发现npk-bundle被贬值并在~/.gluon/substrate/Android中创建了一个指向~/.gluon/substrate/Android/ndk的链接后,我想出了如何“修复”这个错误/25.2.9519653 根据帖子的缓解说明,其中确实包含工具链、ld.lld 等。

然而,在这一切之后,一个新的错误出现了,关于 /target/classes 没有被构建(我看了,它实际上不存在)。我不明白在遵循胶子文档时我经常做错什么,因此我们将不胜感激任何帮助。

    grace@Ubuntu:~/Downloads/gluon-samples/HelloFX$ mvn -e -Pandroid gluonfx:package
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------< com.gluonhq.samples:hellofx >---------------------
[INFO] Building HelloFX 1.0.0-SNAPSHOT
[INFO]   from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- gluonfx-maven-plugin:1.0.19:package (default-cli) @ hellofx ---
[Tue Aug 01 15:19:10 PDT 2023][INFO] ==================== PACKAGE TASK ====================
[Tue Aug 01 15:19:11 PDT 2023][SEVERE] Failed copying /home/grace/Downloads/gluon-samples/HelloFX/target/classes to /tmp/classes12186633477663262179: java.nio.file.NoSuchFileException: /home/grace/Downloads/gluon-samples/HelloFX/target/classes
Check the log files under /home/grace/Downloads/gluon-samples/HelloFX/target/gluonfx/aarch64-android/gvm/log
And please check https://docs.gluonhq.com/ for more information.
java.nio.file.NoSuchFileException: /home/grace/Downloads/gluon-samples/HelloFX/target/classes
    at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
    at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
    at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
    at java.base/sun.nio.fs.UnixCopyFile.copy(UnixCopyFile.java:548)
    at java.base/sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:257)
    at java.base/java.nio.file.Files.copy(Files.java:1305)
    at com.gluonhq.substrate.util.FileOps.copyFile(FileOps.java:260)
    at com.gluonhq.substrate.util.FileOps.copyDirectory(FileOps.java:319)
    at com.gluonhq.substrate.model.ClassPath.getJars(ClassPath.java:153)
    at com.gluonhq.substrate.config.AndroidResolver.<init>(AndroidResolver.java:65)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.requiredDependencies(AndroidTargetConfiguration.java:653)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.prepareAndroidProject(AndroidTargetConfiguration.java:522)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.packageApp(AndroidTargetConfiguration.java:143)
    at com.gluonhq.substrate.SubstrateDispatcher.nativePackage(SubstrateDispatcher.java:462)
    at com.gluonhq.NativePackageMojo.execute(NativePackageMojo.java:48)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:370)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
    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:299)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:963)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:296)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    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)
java.lang.RuntimeException: Fatal Error: java.nio.file.NoSuchFileException: /home/grace/Downloads/gluon-samples/HelloFX/target/classes
    at com.gluonhq.substrate.util.Logger.logFatal(Logger.java:70)
    at com.gluonhq.substrate.util.FileOps.copyFile(FileOps.java:263)
    at com.gluonhq.substrate.util.FileOps.copyDirectory(FileOps.java:319)
    at com.gluonhq.substrate.model.ClassPath.getJars(ClassPath.java:153)
    at com.gluonhq.substrate.config.AndroidResolver.<init>(AndroidResolver.java:65)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.requiredDependencies(AndroidTargetConfiguration.java:653)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.prepareAndroidProject(AndroidTargetConfiguration.java:522)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.packageApp(AndroidTargetConfiguration.java:143)
    at com.gluonhq.substrate.SubstrateDispatcher.nativePackage(SubstrateDispatcher.java:462)
    at com.gluonhq.NativePackageMojo.execute(NativePackageMojo.java:48)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:370)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
    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:299)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:963)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:296)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    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)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  2.777 s
[INFO] Finished at: 2023-08-01T15:19:11-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.gluonhq:gluonfx-maven-plugin:1.0.19:package (default-cli) on project hellofx: Error: Fatal Error: java.nio.file.NoSuchFileException: /home/grace/Downloads/gluon-samples/HelloFX/target/classes -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.gluonhq:gluonfx-maven-plugin:1.0.19:package (default-cli) on project hellofx: Error
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:375)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    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:299)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:963)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:296)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:199)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    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: org.apache.maven.plugin.MojoExecutionException: Error
    at com.gluonhq.NativePackageMojo.execute (NativePackageMojo.java:51)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    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:299)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:963)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:296)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:199)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    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.lang.RuntimeException: Fatal Error: java.nio.file.NoSuchFileException: /home/grace/Downloads/gluon-samples/HelloFX/target/classes
    at com.gluonhq.substrate.util.Logger.logFatal (Logger.java:70)
    at com.gluonhq.substrate.util.FileOps.copyFile (FileOps.java:263)
    at com.gluonhq.substrate.util.FileOps.copyDirectory (FileOps.java:319)
    at com.gluonhq.substrate.model.ClassPath.getJars (ClassPath.java:153)
    at com.gluonhq.substrate.config.AndroidResolver.<init> (AndroidResolver.java:65)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.requiredDependencies (AndroidTargetConfiguration.java:653)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.prepareAndroidProject (AndroidTargetConfiguration.java:522)
    at com.gluonhq.substrate.target.AndroidTargetConfiguration.packageApp (AndroidTargetConfiguration.java:143)
    at com.gluonhq.substrate.SubstrateDispatcher.nativePackage (SubstrateDispatcher.java:462)
    at com.gluonhq.NativePackageMojo.execute (NativePackageMojo.java:48)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:163)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    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:299)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:963)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:296)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:199)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    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)
[ERROR] 
[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
android maven gluon gluon-mobile gluonfx
© www.soinside.com 2019 - 2024. All rights reserved.