使用application.yaml而不是application.properties配置应用程序

时间:2019-12-20 19:02:24

标签: quarkus

我有一个小的Quarkus int Web应用程序(使用Java json_object_get_int())。我正在尝试使用YAML文件配置应用程序(而不是通常的1.1.0.Final),但是无法启动应用程序。我总是收到这个不太有用的错误消息:

1.8

这是我的YAML文件:

application.properties

有人使用这种方法已经成功了吗?我包括13:53:32,494 ERROR [io.qua.dev.DevModeMain] Failed to start Quarkus: java.lang.RuntimeException: io.quarkus.builder.ChainBuildException: No producers for required item class io.quarkus.deployment.builditem.BuildTimeRunTimeFixedConfigurationBuildItem at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:180) at io.quarkus.dev.DevModeMain.doStart(DevModeMain.java:177) at io.quarkus.dev.DevModeMain.start(DevModeMain.java:95) at io.quarkus.dev.DevModeMain.main(DevModeMain.java:66) Caused by: io.quarkus.builder.ChainBuildException: No producers for required item class io.quarkus.deployment.builditem.BuildTimeRunTimeFixedConfigurationBuildItem at io.quarkus.builder.BuildChainBuilder.build(BuildChainBuilder.java:240) at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:112) at io.quarkus.runner.RuntimeRunner.run(RuntimeRunner.java:113) ... 3 more 13:53:32,519 INFO [io.qua.dev.DevModeMain] Attempting to start hot replacement endpoint to recover from previous Quarkus startup failure 13:53:32,532 ERROR [io.qua.dev.DevModeMain] Failed to start quarkus: java.lang.IllegalArgumentException: workerPoolSize must be > 0 at io.vertx.core.VertxOptions.setWorkerPoolSize(VertxOptions.java:275) at io.quarkus.vertx.core.runtime.VertxCoreRecorder.convertToVertxOptions(VertxCoreRecorder.java:151) at io.quarkus.vertx.core.runtime.VertxCoreRecorder.initializeWeb(VertxCoreRecorder.java:104) at io.quarkus.vertx.http.runtime.VertxHttpRecorder.startServerAfterFailedStart(VertxHttpRecorder.java:115) at io.quarkus.vertx.http.deployment.devmode.VertxHotReplacementSetup.handleFailedInitialStart(VertxHotReplacementSetup.java:30) at io.quarkus.dev.RuntimeUpdatesProcessor.startupFailed(RuntimeUpdatesProcessor.java:449) at io.quarkus.dev.DevModeMain.doStart(DevModeMain.java:191) at io.quarkus.dev.DevModeMain.start(DevModeMain.java:95) at io.quarkus.dev.DevModeMain.main(DevModeMain.java:66)

  

我注意到的一件事是,我无法像使用Spring Boot那样使用# # https://quarkus.io/guides/all-config # https://quarkus.io/guides/config#overriding-properties-at-runtime quarkus: datasource: driver: org.postgresql.Driver flyway: migrate-at-start: true health: extensions: enabled: true hibernate-orm: dialect: org.hibernate.dialect.PostgreSQL10Dialect http: port: 8080 log: # ALL > FINEST > FINER > FINE > CONFIG > INFO > WARNING > SEVERE > OFF console: async: true color: true enable: true format: "%d{yyyy-MM-dd HH:mm:ss,SSS} |- %-5p in %c:%L{3.} [%t] - %s%e%n" level: WARNING resteasy: path: /api smallrye-openapi: path: /open-api swagger-ui: always-include: true path: /swagger-ui "%dev": quarkus: datasource: password: postgres url: jdbc:postgresql://localhost:5432/quarkus_web username: postgres flyway: clean-at-start: true hibernate-orm: log: sql: true statistics: true log: category: "io.quarkus.arc.processor": level: OFF "io.quarkus": level: INFO "org.acme": level: CONFIG "%prod": quarkus: datasource: password: postgres url: jdbc:postgresql://localhost:5432/quarkus_web username: postgres flyway: clean-at-start: false hibernate-orm: database: generation: none sql-load-script: no-file "%test": quarkus: datasource: password: postgres url: jdbc:postgresql://localhost:5432/quarkus_web username: postgres flyway: clean-at-start: true log: category: "io.quarkus": level: WARNING "org.acme": level: WARNING 分隔配置文件。我想我应该为此提出一个问题:thinking_face:

2 个答案:

答案 0 :(得分:1)

它肯定看起来像个错误,甚至可能是2个,因为第二个错误消息看起来与我考虑您的配置文件时不一样。

您能在我们的跟踪器中创建一个错误:https://github.com/quarkusio/quarkus/issues/new?assignees=&labels=bug&template=bug_report.md&title=吗?

如果您可以提供一个复制器,那就太好了。 AFAICS,Quarkus根本无法启动,因此您的pom.xml具有您使用的各种扩展名以及您的配置文件应该足以重现此问题。

答案 1 :(得分:1)

结果证明这不是问题。我只有一个旧的Gradle配置;版本1.1.0.Final的Gradle插件发生了一些变化,而我只是没有这些。