首页 > 解决方案 > quarcus maven插件无法创建项目

问题描述

尝试使用以下命令从头开始创建 quarkus 项目:

mvn io.quarkus:quarkus-maven-plugin:1.13.7.Final:create -DprojectGroupId=org.acme -DprojectArtifactId=getting-started -DclassName="org.acme.getting.started.GreetingResource" -Dpath="/hello"

引导 quarkus 项目页面中所述, 失败并出现以下错误:

[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO] 
[INFO] --- quarkus-maven-plugin:1.13.7.Final:create (default-cli) @ standalone-pom ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.692 s
[INFO] Finished at: 2021-06-16T14:23:09+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal io.quarkus:quarkus-maven-plugin:1.13.7.Final:create (default-cli) on project standalone-pom: Execution default-cli of goal io.quarkus:quarkus-maven-plugin:1.13.7.Final:create failed: Failed to deserialize extension catalog ~/.m2/repository/io/quarkus/quarkus-universe-bom-quarkus-platform-descriptor/1.13.7.Final/quarkus-universe-bom-quarkus-platform-descriptor-1.13.7.Final-1.13.7.Final.json: Unexpected character ('<' (code 60)): expected a valid value (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
[ERROR]  at [Source: (BufferedReader); line: 1, column: 2]
[ERROR] -> [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/PluginExecutionException

运行 maven 调试选项 (-X) 会显示一个可能错误的 .m2 存储库资源:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  9.028 s
[INFO] Finished at: 2021-06-16T14:10:23+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal io.quarkus:quarkus-maven-plugin:1.13.7.Final:create (default-cli) on project standalone-pom: Execution default-cli of goal io.quarkus:quarkus-maven-plugin:1.13.7.Final:create failed: Failed to deserialize extension catalog ~/.m2/repository/io/quarkus/quarkus-universe-bom-quarkus-platform-descriptor/1.13.7.Final/quarkus-universe-bom-quarkus-platform-descriptor-1.13.7.Final-1.13.7.Final.json: Unexpected character ('<' (code 60)): expected a valid value (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
[ERROR]  at [Source: (BufferedReader); line: 1, column: 2]
[ERROR] -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal io.quarkus:quarkus-maven-plugin:1.13.7.Final:create (default-cli) on project standalone-pom: Execution default-cli of goal io.quarkus:quarkus-maven-plugin:1.13.7.Final:create failed: Failed to deserialize extension catalog ~/.m2/repository/io/quarkus/quarkus-universe-bom-quarkus-platform-descriptor/1.13.7.Final/quarkus-universe-bom-quarkus-platform-descriptor-1.13.7.Final-1.13.7.Final.json
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
    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: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 jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    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.PluginExecutionException: Execution default-cli of goal io.quarkus:quarkus-maven-plugin:1.13.7.Final:create failed: Failed to deserialize extension catalog ~/.m2/repository/io/quarkus/quarkus-universe-bom-quarkus-platform-descriptor/1.13.7.Final/quarkus-universe-bom-quarkus-platform-descriptor-1.13.7.Final-1.13.7.Final.json
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:148)

进一步查看错误资源~/.m2/repository/io/quarkus/quarkus-universe-bom-quarkus-platform-descriptor/1.13.7.Final/quarkus-universe-bom-quarkus-platform-descriptor-1.13.7.Final-1.13.7.Final.json,似乎预期的.json文件已html格式化......

此外,我的 Maven 版本与 quarkus 要求兼容:

User@-bash - createProject - 14:23:09 $ mvn --version
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: /usr/local/Cellar/maven/3.8.1/libexec
Java version: 11.0.11, vendor: GraalVM Community, runtime: /Library/Java/JavaVirtualMachines/graalvm-ce-java11-21.1.0/Contents/Home
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "11.4", arch: "x86_64", family: "mac"

我的本地 .m2 存储库包含所有必要的 quarkus 依赖项。

干杯!

标签: javamavenquarkussample

解决方案


使用此处的预期 json 描述符~/.m2/repository/io/quarkus/quarkus-universe-bom-quarkus-platform-descriptor/quarkus-universe-bom-quarkus-platform-descriptor-1.13.7.Final-1.13.7.Final.json的内容更改 my解决了该问题。

这是预期的结果:

User@-bash - createProject - 15:46:04 $ mvn io.quarkus:quarkus-maven-plugin:1.13.7.Final:create -DprojectGroupId=org.acme -DprojectArtifactId=getting-started -DclassName="org.acme.getting.started.GreetingResource" -Dpath="/hello"
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO] 
[INFO] --- quarkus-maven-plugin:1.13.7.Final:create (default-cli) @ standalone-pom ---
-----------

applying codestarts...
 java
 maven
 quarkus
 config-properties
 dockerfiles
 maven-wrapper
 resteasy-example

-----------
[SUCCESS] ✅ quarkus project has been successfully generated in:
--> /Users/User/work/quarkus/test/createProject/getting-started
-----------
[INFO] 
[INFO] ========================================================================================
[INFO] Your new application has been created in /Users/User/work/quarkus/test/createProject/getting-started
[INFO] Navigate into this directory and launch your application with mvn quarkus:dev
[INFO] Your application will be accessible on http://localhost:8080
[INFO] ========================================================================================
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  2.060 s
[INFO] Finished at: 2021-06-16T17:16:26+02:00
[INFO] ------------------------------------------------------------------------

我不知道在哪里报告这个文件的 Maven 中心无效下载校验和。


推荐阅读