Class BuildTimeConfigBuilderCustomizer

java.lang.Object
io.quarkus.deployment.configuration.BuildTimeConfigBuilderCustomizer
All Implemented Interfaces:
io.smallrye.config.SmallRyeConfigBuilderCustomizer

public class BuildTimeConfigBuilderCustomizer extends Object implements io.smallrye.config.SmallRyeConfigBuilderCustomizer
Even if the Log and Console mappings are marked as runtime, they are also used during build time.

We cannot register the mappings in the core runtime module because SmallRyeConfig requires ASM to load the mappings. When we run a Quarkus test, Quarkus will generate the bytecode for the mappings, so we don't need ASM. In a non-Quarkus tests, ASM must be present in the classpath, which we want to avoid (even if they are in the test scope). The logging mappings shouldn't be loaded when running a non-Quarkus test because they are not required.

See Also:
  • LoggingSetupRecorder.initializeBuildTimeLogging(LogRuntimeConfig, LogBuildTimeConfig, ConsoleRuntimeConfig, Map, List, LaunchMode)
  • Constructor Details

    • BuildTimeConfigBuilderCustomizer

      public BuildTimeConfigBuilderCustomizer()
  • Method Details

    • configBuilder

      public void configBuilder(io.smallrye.config.SmallRyeConfigBuilder builder)
      Specified by:
      configBuilder in interface io.smallrye.config.SmallRyeConfigBuilderCustomizer