You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
2021-08-24 15:05:14,301 ERROR [io.qua.dep.dev.IsolatedDevModeMain] (main) Failed to start quarkus: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
[error]: Build step io.quarkus.arc.deployment.ConfigBuildStep#generateConfigClasses threw an exception: java.lang.IllegalArgumentException: Configuration methods cannot accept parameters
at io.smallrye.config.ConfigMappingInterface.getProperties(ConfigMappingInterface.java:597)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:559)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:573)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:579)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:579)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:557)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingInterface.getPropertyDef(ConfigMappingInterface.java:652)
at io.smallrye.config.ConfigMappingInterface.getProperties(ConfigMappingInterface.java:602)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:559)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingLoader.getConfigMappingsMetadata(ConfigMappingLoader.java:26)
at io.quarkus.arc.deployment.ConfigBuildStep.generateConfigClasses(ConfigBuildStep.java:289)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:820)
at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2449)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1478)
at java.base/java.lang.Thread.run(Thread.java:831)
at org.jboss.threads.JBossThread.run(JBossThread.java:501)
at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:415)
at io.quarkus.runner.bootstrap.AugmentActionImpl.createInitialRuntimeApplication(AugmentActionImpl.java:275)
at io.quarkus.runner.bootstrap.AugmentActionImpl.createInitialRuntimeApplication(AugmentActionImpl.java:66)
at io.quarkus.deployment.dev.IsolatedDevModeMain.firstStart(IsolatedDevModeMain.java:91)
at io.quarkus.deployment.dev.IsolatedDevModeMain.accept(IsolatedDevModeMain.java:424)
at io.quarkus.deployment.dev.IsolatedDevModeMain.accept(IsolatedDevModeMain.java:64)
at io.quarkus.bootstrap.app.CuratedApplication.runInCl(CuratedApplication.java:136)
at io.quarkus.bootstrap.app.CuratedApplication.runInAugmentClassLoader(CuratedApplication.java:93)
at io.quarkus.deployment.dev.DevModeMain.start(DevModeMain.java:145)
at io.quarkus.deployment.dev.DevModeMain.main(DevModeMain.java:63)
Caused by: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
[error]: Build step io.quarkus.arc.deployment.ConfigBuildStep#generateConfigClasses threw an exception: java.lang.IllegalArgumentException: Configuration methods cannot accept parameters
at io.smallrye.config.ConfigMappingInterface.getProperties(ConfigMappingInterface.java:597)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:559)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:573)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:579)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:579)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:557)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingInterface.getPropertyDef(ConfigMappingInterface.java:652)
at io.smallrye.config.ConfigMappingInterface.getProperties(ConfigMappingInterface.java:602)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:559)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingLoader.getConfigMappingsMetadata(ConfigMappingLoader.java:26)
at io.quarkus.arc.deployment.ConfigBuildStep.generateConfigClasses(ConfigBuildStep.java:289)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:820)
at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2449)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1478)
at java.base/java.lang.Thread.run(Thread.java:831)
at org.jboss.threads.JBossThread.run(JBossThread.java:501)
at io.quarkus.builder.Execution.run(Execution.java:116)
at io.quarkus.builder.BuildExecutionBuilder.execute(BuildExecutionBuilder.java:79)
at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:151)
at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:413)
... 9 more
Caused by: java.lang.IllegalArgumentException: Configuration methods cannot accept parameters
at io.smallrye.config.ConfigMappingInterface.getProperties(ConfigMappingInterface.java:597)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:559)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:573)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:579)
at io.smallrye.config.ConfigMappingInterface.getSuperTypes(ConfigMappingInterface.java:579)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:557)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingInterface.getPropertyDef(ConfigMappingInterface.java:652)
at io.smallrye.config.ConfigMappingInterface.getProperties(ConfigMappingInterface.java:602)
at io.smallrye.config.ConfigMappingInterface.createConfigurationInterface(ConfigMappingInterface.java:559)
at io.smallrye.config.ConfigMappingInterface.access$000(ConfigMappingInterface.java:27)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:32)
at io.smallrye.config.ConfigMappingInterface$1.computeValue(ConfigMappingInterface.java:30)
at java.base/java.lang.ClassValue.getFromHashMap(ClassValue.java:228)
at java.base/java.lang.ClassValue.getFromBackup(ClassValue.java:210)
at java.base/java.lang.ClassValue.get(ClassValue.java:116)
at io.smallrye.config.ConfigMappingInterface.getConfigurationInterface(ConfigMappingInterface.java:61)
at io.smallrye.config.ConfigMappingLoader.getConfigMappingsMetadata(ConfigMappingLoader.java:26)
at io.quarkus.arc.deployment.ConfigBuildStep.generateConfigClasses(ConfigBuildStep.java:289)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:820)
at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2449)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1478)
at java.base/java.lang.Thread.run(Thread.java:831)
at org.jboss.threads.JBossThread.run(JBossThread.java:501)
Looks like Quarkus is scanning java.nio.file.Path interface and trying to create a synthetic class implementing this interface.
This does not happen when I explicitly specify Converter:
Describe the bug
When I have a property with type
java.nio.file.Path
in ConfigMapping like thisI get build error
Looks like Quarkus is scanning java.nio.file.Path interface and trying to create a synthetic class implementing this interface.
This does not happen when I explicitly specify Converter:
Expected behavior
I'd love Quarkus to support java.nio.file.Path out-of-the-box without extra annotations, like it's supported for @ConfigProperty.
Output of
uname -a
orver
Linux 5.10.52-gentoo #1 SMP Thu Jul 29 22:16:28 MSK 2021 x86_64 Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz GenuineIntel GNU/Linux
Output of
java -version
openjdk version "11.0.12" 2021-07-20 LTS
OpenJDK Runtime Environment Zulu11.50+19-CA (build 11.0.12+7-LTS)
OpenJDK 64-Bit Server VM Zulu11.50+19-CA (build 11.0.12+7-LTS, mixed mode)
Quarkus version or git rev
2.1.3.Final
Build tool (ie. output of
mvnw --version
orgradlew --version
)Apache Maven 3.6.3
The text was updated successfully, but these errors were encountered: