Quarkus 项目在 Bamboo 中构建失败

Posted

技术标签:

【中文标题】Quarkus 项目在 Bamboo 中构建失败【英文标题】:Quarkus project build failing in Bamboo 【发布时间】:2019-03-27 15:43:48 【问题描述】:

我正在尝试在 Bamboo 中构建 Quarkus 应用程序,但由于很多配置错误而失败:

[WARNING] Error injecting: io.quarkus.maven.BuildMojo
com.google.inject.ProvisionException: Unable to provision, see the following errors:

1) Error injecting: private org.eclipse.aether.spi.log.Logger 
   org.apache.maven.repository.internal.DefaultVersionRangeResolver.logger
   while locating org.apache.maven.repository.internal.DefaultVersionRangeResolver
   while locating java.lang.Object annotated with *
     at org.eclipse.sisu.wire.LocatorWiring
   while locating org.eclipse.aether.impl.VersionRangeResolver
     for parameter 1 at 
   org.eclipse.aether.internal.impl.DefaultRepositorySystem.<init>(Unknown Source)
   while locating org.eclipse.aether.internal.impl.DefaultRepositorySystem
   while locating java.lang.Object annotated with *
   while locating io.quarkus.maven.BuildMojo

   Caused by: java.lang.IllegalArgumentException: Can not set 
     org.eclipse.aether.spi.log.Logger field 
     org.apache.maven.repository.internal.DefaultVersionRangeResolver.logger to 
     org.eclipse.aether.internal.impl.slf4j.Slf4jLoggerFactory

使用以clean package 为目标的 Maven 3.2.5。该项目在本地构建良好。

这可能是什么原因造成的?

【问题讨论】:

什么是“3.x”,你可以试试 3.5 吗?我怀疑 Quarkus Maven 插件需要某个最低 Maven 版本,它不完全是 3.0.0,而是 3.3.9 左右。 Bamboo 可以选择 3.x,然后使用最新的可用版本。当它构建时,它实际上使用的是 3.2.5。我看看能不能升级。 @Ladicek 你是对的 - 旧版本的 maven 在本地给出相同的错误。 我添加了一个真正的答案,而不仅仅是一个评论 :-) 【参考方案1】:

这是由于 Maven 版本太旧造成的。根据https://quarkus.io/get-started/,需要 Maven 3.5.3 或更高版本。

【讨论】:

由于人们似乎仍在接受这个答案,我会指出当前的要求是 Maven 3.6.2(但 3.6.3 更好:-))。【参考方案2】:

另一个原因是您的依赖项没有下载。尝试使用默认的settings.xml 和代理通过代理下载依赖项。

【讨论】:

以上是关于Quarkus 项目在 Bamboo 中构建失败的主要内容,如果未能解决你的问题,请参考以下文章

云原生时代高性能Java框架—Quarkus

如何在 Jira 中为 Bamboo 上的失败构建自动创建缺陷?

在 Ant Bamboo 构建中使用 Jira 或默认项目版本

如何在 Jenkins 中触发构建在其他构建成功但在 Bamboo 中运行之后

从 Bamboo 构建开始 Bamboo 部署

Bamboo VSTest Runner 失败并显示“在目录中找不到测试结果报告”