profile
viewpoint
Andreas Eberle andreas-eberle arconsis IT-Solutions GmbH http://www.andreas-eberle.com

arconsis/blog-playing-doom-with-tf-agents 7

In this repository, we share the code for our blog post on reinforcement learning with TF-Agents to play doom with PPO.

andreas-eberle/x-mars 3

This repository provides the X-MARS dataset splits for image to video/tracklet evaluation.

HelfenKannJeder/helf-o-mat 3

Helf-O-Mat project from HelfenKannJeder e.V. to recruit volunteers for public relief organizations.

andreas-eberle/agents 0

TF-Agents is a library for Reinforcement Learning in TensorFlow

andreas-eberle/come2help-server 0

REST-Webservice: Project for recruiting and coordinating volunteer people.

andreas-eberle/come2help-web 0

Web-App: Project for recruiting and coordinating volunteer people.

andreas-eberle/deeplearning4j 0

Deep Learning for Java, Scala & Clojure on Hadoop & Spark With GPUs - From Skymind

andreas-eberle/dl4j-0.4-examples 0

Please use these examples based on deeplearning4j 0.4.* release.

issue commentapache/incubator-superset

Cannot create table with same name from a different datasource

@mistercrunch: Can this be reopend? It still isn't fixed. I also experience this issue. @natbusa: Have you been able to test your suggestion?

frankfarrell

comment created time in 4 days

issue commentsmallrye/smallrye-reactive-messaging

Reactive messaging health check fails if no topic name is specified

Just to be sure, the connection health check will still be enabled, correct?

andreas-eberle

comment created time in 6 days

issue openedsmallrye/smallrye-reactive-messaging

Reactive messaging health check fails if no topic name is specified

I'm using smallrye reactive messaging with kafka and have a connection configured without a topic name. This is because I want to send messages to dynamic topics at runtime. My config looks like this

quarkus.kafka.health.enabled=true
kafka.bootstrap.servers=${KAFKA_SERVER:localhost:9092}
mp.messaging.outgoing.events.connector=smallrye-kafka
mp.messaging.outgoing.events.value.serializer=io.quarkus.kafka.client.serialization.ObjectMapperSerializer

and I send messages with an Emitter by adding an OutgoingKafkaRecordMetadata object with the desired topic name.

I now wanted to use the kafka health checks and noticed that the "events" connector is shown as DOWN because its topic cannot be found. However, I never specified a topic.


{
    "status": "DOWN",
    "checks": [
        {
            "name": "SmallRye Reactive Messaging - liveness check",
            "status": "UP",
            "data": {
                "events": "[OK]"
            }
        },
        {
            "name": "Kafka connection health check",
            "status": "UP",
            "data": {
                "nodes": "host.docker.internal:9092"
            }
        },
        {
            "name": "SmallRye Reactive Messaging - readiness check",
            "status": "DOWN",
            "data": {
                "events": "[KO] - Unable to find topic events"
            }
        }
    ]
}

I think this check shouldn't/cannot be done if no topic name is set.

created time in 7 days

issue openedquarkusio/quarkus

Gradle: Cannot push containers to multiple repositories due to task caching

Describe the bug Currently the quarkus-container-image-jib extension does not support multiple registry urls to push images to. Therefore I'm running the following command build & push images twice.

./gradlew assemble -Dquarkus.container-image.push=true -Dquarkus.container-image.registry=$REGISTRY -Dquarkus.container-image.username=$REGISTRY_USER -Dquarkus.container-image.password=$REGISTRY_PASSWORD

However, when you run the command the second time, with a different registry, it is not executed due to gradle task caching. I think the push task should either not be cached or it should check if the registry url has changed.

Expected behavior Running the build & push of jib container building with different registries should push the image to both registries.

Actual behavior After the first run, the second time, the build&push task is seen as "UP TO DATE" by gradle and therefore not run for the second registry.

created time in 22 days

issue commentquarkusio/quarkus

Gradle + quarkus-container-image-jib: AccessDeniedException on second run on Windows

@geoand: Unfortunately, this does not seem to fix the issue. I still get the same error. Furthermore, I don't think this is a timing issue only, since I can only fix it by stopping the gradle deamons. Therefore it looks to me like the gradle deamons seem to keep some file lock on the directories or something like that.

andreas-eberle

comment created time in 22 days

issue commentquarkusio/quarkus

Gradle multimodule project + quarkus-container-image-jib: OverlappingFileLockException

As a workaround, it works when you specify quarkusBuild.mustRunAfter(':serviceA:quarkusBuild') in the build.gradle file of serviceB. This ensures the quarkus tasks and therefore the jib image building is run sequentially.

However, I don't see why they shouldn't be able to run in parallel.

andreas-eberle

comment created time in 25 days

issue openedquarkusio/quarkus

Gradle multimodule project + quarkus-container-image-jib: OverlappingFileLockException

Describe the bug I have a gradle + Kotlin multi-module project and try to build container images with the quarkus-container-image-jib extension. When I run ./gradlew assemble -Dquarkus.container-image.build=true, I get an OverlappingFileLockException (on Windows 10 as well as on the gradle:6.6-jdk11 docker image).

Apart from the issues I described in #11900, I can build both images by manually running ./gradlew :serviceA:assemble -Dquarkus.container-image.build=true and then ./gradlew :serviceB:assemble -Dquarkus.container-image.build=true.

Detailed exception:

17:28:34: Executing task 'assemble -Dquarkus.container-image.build=true'...


> Task :serviceA:quarkusGenerateCode
preparing quarkus application
kotlin scripting plugin: project ':serviceA'.compileQuarkus-generated-sourcesKotlin - configuration not found: quarkus-generated-sourcesKotlinScriptDef, the plugin is probably applied by a mistake

> Task :serviceB:quarkusGenerateCode
preparing quarkus application
kotlin scripting plugin: project ':serviceB'.compileQuarkus-generated-sourcesKotlin - configuration not found: quarkus-generated-sourcesKotlinScriptDef, the plugin is probably applied by a mistake

> Task :serviceA:quarkusGenerateCodeTests
preparing quarkus application
kotlin scripting plugin: project ':serviceA'.compileQuarkus-test-generated-sourcesKotlin - configuration not found: quarkus-test-generated-sourcesKotlinScriptDef, the plugin is probably applied by a mistake

> Task :serviceB:quarkusGenerateCodeTests
preparing quarkus application
kotlin scripting plugin: project ':serviceB'.compileQuarkus-test-generated-sourcesKotlin - configuration not found: quarkus-test-generated-sourcesKotlinScriptDef, the plugin is probably applied by a mistake

> Task :serviceB:compileKotlin
> Task :serviceA:compileKotlin
> Task :serviceA:compileJava NO-SOURCE
> Task :serviceB:compileJava NO-SOURCE
> Task :serviceA:processResources
> Task :serviceB:processResources
> Task :serviceA:classes
> Task :serviceB:classes
> Task :serviceA:inspectClassesForKotlinIC
> Task :serviceB:inspectClassesForKotlinIC
> Task :serviceA:jar
> Task :serviceB:jar

> Task :serviceA:quarkusBuild
building quarkus jar

Base image 'fabric8/java-alpine-openjdk11-jre' does not use a specific image digest - build may not be reproducible
Base image 'fabric8/java-alpine-openjdk11-jre' does not use a specific image digest - build may not be reproducible

> Task :serviceB:quarkusBuild
building quarkus jar

> Task :serviceB:quarkusBuild FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':serviceB:quarkusBuild'.
> io.quarkus.builder.BuildException: Build failure: Build failed due to errors
  	[error]: Build step io.quarkus.container.image.jib.deployment.JibProcessor#buildFromJar threw an exception: java.lang.RuntimeException: Unable to create container image
  	at io.quarkus.container.image.jib.deployment.JibProcessor.containerize(JibProcessor.java:153)
  	at io.quarkus.container.image.jib.deployment.JibProcessor.buildFromJar(JibProcessor.java:102)
  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  	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:932)
  	at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
  	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
  	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2046)
  	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1578)
  	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1452)
  	at java.base/java.lang.Thread.run(Thread.java:830)
  	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
  Caused by: java.util.concurrent.ExecutionException: java.nio.channels.OverlappingFileLockException
  	at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:552)
  	at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:533)
  	at com.google.common.util.concurrent.FluentFuture$TrustedFuture.get(FluentFuture.java:82)
  	at com.google.cloud.tools.jib.builder.steps.StepsRunner.lambda$buildImage$8(StepsRunner.java:344)
  	at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
  	at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:57)
  	at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
  	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
  	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
  	at java.base/java.lang.Thread.run(Thread.java:830)
  Caused by: java.nio.channels.OverlappingFileLockException
  	at java.base/sun.nio.ch.FileLockTable.checkList(FileLockTable.java:229)
  	at java.base/sun.nio.ch.FileLockTable.add(FileLockTable.java:123)
  	at java.base/sun.nio.ch.FileChannelImpl.lock(FileChannelImpl.java:1110)
  	at java.base/java.nio.channels.FileChannel.lock(FileChannel.java:1076)
  	at com.google.cloud.tools.jib.filesystem.LockFile.lock(LockFile.java:67)
  	at com.google.cloud.tools.jib.cache.CacheStorageWriter.writeMetadata(CacheStorageWriter.java:315)
  	at com.google.cloud.tools.jib.cache.Cache.writeMetadata(Cache.java:81)
  	at com.google.cloud.tools.jib.builder.steps.PullBaseImageStep.pullBaseImage(PullBaseImageStep.java:249)
  	at com.google.cloud.tools.jib.builder.steps.PullBaseImageStep.call(PullBaseImageStep.java:160)
  	at com.google.cloud.tools.jib.builder.steps.PullBaseImageStep.call(PullBaseImageStep.java:56)
  	... 6 more


* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 26s
14 actionable tasks: 14 executed
17:29:00: Task execution finished 'assemble -Dquarkus.container-image.build=true'.

To Reproduce Steps to reproduce the behavior:

  1. Dowload reproducer project and unzip it 2020-09-04_jib-multimodule-problems.zip
  2. Run ./gradlew assemble -Dquarkus.container-image.build=true
  3. See the error shown above.

Environment (please complete the following information):

  • Windows 10 (also happens on gradle:6.6-jdk11 docker image in my CI builds)
  • Gradle
  • Kotlin

created time in 25 days

issue openedquarkusio/quarkus

Gradle + quarkus-container-image-jib: AccessDeniedException on second run on Windows

Describe the bug I try to build a container image with the quarkus-container-image-jib extension in my Quarkus (gradle, Kotlin) project on my Windows 10 PC. The first run works (./gradlew assemble -Dquarkus.container-image.build=true). On the second and any further runs l I always get AccessDeniedExceptions. When I stop the gradle deamons (./gradlew --stop) or kill them via the TaskManager, it works again for one run but then I end up with the same issue.

Full exception:

17:15:27: Executing task 'assemble -Dquarkus.container-image.build=true'...


> Task :quarkusGenerateCode
preparing quarkus application
kotlin scripting plugin: root project 'code-with-quarkus'.compileQuarkus-generated-sourcesKotlin - configuration not found: quarkus-generated-sourcesKotlinScriptDef, the plugin is probably applied by a mistake

> Task :quarkusGenerateCodeTests
preparing quarkus application
kotlin scripting plugin: root project 'code-with-quarkus'.compileQuarkus-test-generated-sourcesKotlin - configuration not found: quarkus-test-generated-sourcesKotlinScriptDef, the plugin is probably applied by a mistake

> Task :compileKotlin
> Task :compileJava NO-SOURCE
> Task :processResources UP-TO-DATE
> Task :classes UP-TO-DATE
> Task :inspectClassesForKotlinIC
> Task :jar

> Task :quarkusBuild FAILED
building quarkus jar
7 actionable tasks: 6 executed, 1 up-to-date

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':quarkusBuild'.
> io.quarkus.builder.BuildException: Build failure: Build failed due to errors
  	[error]: Build step io.quarkus.deployment.pkg.steps.JarResultBuildStep#buildRunnerJar threw an exception: java.lang.IllegalStateException: java.nio.file.AccessDeniedException: C:\development\quarkus-debugging\bug-reports\2020-09-04_jib-problems\build\lib
  	at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:941)
  	at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
  	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
  	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2046)
  	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1578)
  	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1452)
  	at java.base/java.lang.Thread.run(Thread.java:830)
  	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
  Caused by: java.nio.file.AccessDeniedException: C:\development\quarkus-debugging\bug-reports\2020-09-04_jib-problems\build\lib
  	at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:89)
  	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
  	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
  	at java.base/sun.nio.fs.WindowsFileSystemProvider.createDirectory(WindowsFileSystemProvider.java:506)
  	at java.base/java.nio.file.Files.createDirectory(Files.java:693)
  	at java.base/java.nio.file.Files.createAndCheckIsDirectory(Files.java:800)
  	at java.base/java.nio.file.Files.createDirectories(Files.java:786)
  	at io.quarkus.deployment.pkg.steps.JarResultBuildStep.buildLegacyThinJar(JarResultBuildStep.java:418)
  	at io.quarkus.deployment.pkg.steps.JarResultBuildStep.buildRunnerJar(JarResultBuildStep.java:192)
  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  	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:932)
  	... 7 more


* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 4s
17:15:32: Task execution finished 'assemble -Dquarkus.container-image.build=true'.

To Reproduce Steps to reproduce the behavior:

  1. I assume you need a Windows machine (I have Windows 10)
  2. Download reproducer project and unzip it 2020-09-04_jib-problems.zip
  3. Run ./gradlew assemble -Dquarkus.container-image.build=true
  4. Change something in the code (e.g. in ExampleResource)
  5. Run ./gradlew assemble -Dquarkus.container-image.build=true again (now it should crash with the AccessDeniedException)

Environment (please complete the following information):

  • Windows 10
  • Gradle
  • Kotlin
  • OpenJDK 11

created time in 25 days

issue commentquarkusio/quarkus

Quarkus 1.7.x: Gradle Kotlin project compilation error

@glefloch: Thanks! Sounds great. Looking forward to the fix :)

andreas-eberle

comment created time in a month

issue commentquarkusio/quarkus

Quarkus 1.7.x: Gradle Kotlin project compilation error

This error still exists in Quarkus 1.7.1.

andreas-eberle

comment created time in a month

issue openedquarkusio/quarkus

Quarkus 1.7.0: Gradle Kotlin project compilation error

Describe the bug After upgrading my Quarkus (gradle, Kotlin) project from 1.6.1.Final to 1.7.0.Final, I get a compilation error

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':common:quarkusPrepareTests'.
> Cannot change dependencies of dependency configuration ':common:kotlinCompilerPluginClasspath' after it has been resolved.

To Reproduce Steps to reproduce the behavior:

  1. Download reproducer project and unzip it 2020-08-25_kotlin-compiling-issues.zip
  2. Run ./gradlew check in the project directory
  3. The build fails with the error shown above
  4. Change the Quarkus version in gradle.properties to 1.6.1.Final and it works

Environment (please complete the following information):

  • Quarkus 1.7.0
  • Windows 10
  • JDK 11

created time in a month

issue commentquarkusio/quarkus

Quarkus, Jackson and Kotlin 1.4

I think jackson-module-kotlin is not Kotlin 1.4 compatible yet: https://github.com/FasterXML/jackson-module-kotlin/issues/356

kny78

comment created time in a month

issue commentquarkusio/quarkus

Quarkus, Jackson and Kotlin 1.4

@kny78: I think you pull some artefacts with the kotlin version 1.3.72 since that is the version in the current quarkus bom. When you do not explicitly specify the 1.4 version for all kotlin artefacts, I think you get mixed versions. Maybe have a look at the dependency tree to verify the versions are all 1.4.

kny78

comment created time in a month

delete branch andreas-eberle/quarkus

delete branch : ensure-object-mapper-isnt-removed-with-kafka

delete time in a month

pull request commentquarkusio/quarkus

Ensure Json parsers are not removed during build when using kafka client.

@cescoffier: Can you see what's wrong with the build? Did it simply time out?

andreas-eberle

comment created time in a month

Pull request review commentquarkusio/quarkus

Ensure Json parsers are not removed during build when using kafka client.

 HealthBuildItem addHealthCheck(KafkaBuildTimeConfig buildTimeConfig) {         return new HealthBuildItem("io.quarkus.kafka.client.health.KafkaHealthCheck",                 buildTimeConfig.healthEnabled);     }++    @BuildStep+    UnremovableBeanBuildItem ensureJsonParserAvailable() {+        return UnremovableBeanBuildItem.beanTypes(ObjectMapper.class, Jsonb.class);

@cescoffier: I switched to using the string version as you suggested. When adding the deployment dependencies, the build didn't work anymore anyways. The current version worked for me.

andreas-eberle

comment created time in a month

PullRequestReviewEvent

push eventandreas-eberle/quarkus

Georgios Andrianakis

commit sha 57f93c51a23c9502810561da34b1891c6cc8ab7f

Make sure that non s2i Openshift redeployments only get triggered once Fixes: #10875

view details

Falko Modler

commit sha 2ea1124d50641fe84960796d27e8a8c0d35d736b

Hibernate Validator: status 400 instead of 500 if JAX-RS method is defined in interface

view details

Falko Modler

commit sha b49249e02c2929809d7acdbceb02bfcb30c503ea

Use ResteasyDotNames in hibernate-validator

view details

Guillaume Smet

commit sha 28bc0808ff6c43a611d808a2330d14a7849609d1

Revert "Disable the JDK 14 build for now as it's totally unstable" This reverts commit df381123c04c1c060e88974c93d4927f8602f0df.

view details

Gwenneg Lepage

commit sha 8b69b078a74d5446e6ea243633594256f8efed21

Work around Caffeine warnings during cache computations

view details

Andy Damevin

commit sha 538128c5ca431b3917c18ffba21ab8044201a732

Separate BuildTool wrappers codestarts

view details

Andy Damevin

commit sha 092619ea8b27bab0b8540d3d3cf6dd3fc4d8bf41

CodestartFileStrategy to put `native-test` in `/src/test` when using Maven

view details

Andy Damevin

commit sha 8fe5bbb64f17ab7cd0a97da27905816503d1b483

Fix directories creation bug in codestarts

view details

Guillaume Smet

commit sha c5365d4b13886a9c008c1104e55326b632055cdc

Merge pull request #11506 from famod/hval-400-vs-500 Hibernate Validator: status 400 instead of 500 if JAX-RS method is defined in interface

view details

Guillaume Smet

commit sha 44ec7ea8f99ab1e0f632c26c59bd4ad874fcbc87

Merge pull request #11546 from gwenneg/issue-11315-work-around-caffeine-warnings Work around Caffeine warnings during cache computations

view details

Georgios Andrianakis

commit sha c13b7753d3244cb5c76d147961229d86366820f0

Merge pull request #11559 from geoand/#10875 Make sure that non s2i Openshift redeployments only get triggered once

view details

Andy Damevin

commit sha b898a56ec294f1c24550e31878a709a55a5a98dc

Merge pull request #11520 from ia3andy/codestarts-up2

view details

Andreas Eberle

commit sha f866dff0a0d7d7835b557cebe5ebd883f6c787b8

Ensure Json parsers are not removed during build when using kafka client.

view details

push time in a month

push eventandreas-eberle/quarkus

Andreas Eberle

commit sha e071236296260bfd552acc369c578de47e52a5cd

Also include producers and

view details

push time in a month

push eventandreas-eberle/quarkus

Andreas Eberle

commit sha c6cee795d083c32d826828bd6d2eec72427735f7

Fix import order

view details

push time in a month

Pull request review commentquarkusio/quarkus

Ensure Json parsers are not removed during build when using kafka client.

 HealthBuildItem addHealthCheck(KafkaBuildTimeConfig buildTimeConfig) {         return new HealthBuildItem("io.quarkus.kafka.client.health.KafkaHealthCheck",                 buildTimeConfig.healthEnabled);     }++    @BuildStep+    UnremovableBeanBuildItem ensureJsonParserAvailable() {+        return UnremovableBeanBuildItem.beanTypes(ObjectMapper.class, Jsonb.class);

Isn't that risky in the case the classes ever get renamed or moved? Can this be detected by the compiler then?

andreas-eberle

comment created time in a month

PullRequestReviewEvent

pull request commentquarkusio/quarkus

Ensure Json parsers are not removed during build when using kafka client.

@cescoffier: This PR should fix it. However, my local build is still running, so I wasn't able to test it yet.

andreas-eberle

comment created time in a month

delete branch andreas-eberle/quarkus

delete branch : smallrye-jwt-tests-cleanup

delete time in a month

delete branch andreas-eberle/quarkus

delete branch : smallrye-jwt-extensions

delete time in a month

delete branch andreas-eberle/quarkus

delete branch : simplify-fastjar-dockerfile

delete time in a month

issue openedsmallrye/smallrye-reactive-messaging

Cannot subscribe to kafka topics with regex patterns

I have a service that needs to listen to dynamically created kafka topics. All topics have a name like prefix.<UUID>.events. I tried using the following config in Quarkus' application.properties

mp.messaging.incoming.events.connector=smallrye-kafka
mp.messaging.incoming.events.topic=prefix\\..*\\.events
mp.messaging.incoming.events.pattern=true
mp.messaging.incoming.events.key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
mp.messaging.incoming.events.value.deserializer=org.apache.kafka.common.serialization.StringDeserializer

However, on application startup I get the following errors

2020-08-18 17:37:06,490 ERROR [org.apa.kaf.cli.Metadata] (vert.x-kafka-consumer-thread-0) [Consumer clientId=consumer-fc9989b0-5c1c-4429-882c-a54589be2f04-1, groupId=fc9989b0-5c1c-4429-882c-a54589be2f04] Metadata response reported invalid topics [prefix\..*\.events]
2020-08-18 17:37:06,491 ERROR [io.sma.rea.mes.kafka] (vert.x-kafka-consumer-thread-0) SRMSG18217: Unable to read a record from Kafka topic 'prefix\..*\.events': org.apache.kafka.common.errors.InvalidTopicException: Invalid topics: [prefix\..*\.events]
2020-08-18 17:37:06,492 ERROR [io.sma.rea.mes.provider] (vert.x-kafka-consumer-thread-0) SRMSG00201: Error caught during the stream processing: org.apache.kafka.common.errors.InvalidTopicException: Invalid topics: [prefix\..*\.events]

I tested the pattern by running Pattern.compile("prefix\\..*\\.events") and it compiles and matches my topic names.

Furthermore, I tried using different patterns like .* and .+, which show the same error.

See also discussion on Zulip: https://quarkusio.zulipchat.com/#narrow/stream/187030-users/topic/Smallrye.20Reactive.20Messaging.3A.20Listen.20to.20dynamic.20Kafka.20topics

created time in a month

issue commentquarkusio/quarkus

Log Level configuration not working in Unit Tests

@famod: I was able to get the log outputs by changing the test task in the gradle file to

 test {
         systemProperty 'java.util.logging.config.file', "${projectDir}/src/test/resources/logging.properties"
 }

And I created a logging.properties file in the rest/resources directory with the following contents:

.level=INFO
com.my.package.level=FINEST
#
handlers=java.util.logging.ConsoleHandler
#
java.util.logging.ConsoleHandler.level=FINEST
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format=[%1$tF %1$tT] [%4$-7s] %5$s %n

I hope this can help you.

andreas-eberle

comment created time in 2 months

issue commentquarkusio/quarkus

Log Level configuration not working in Unit Tests

I think it would be better to implement a reasonable working default than not having it work by default at all.

Currently you can write some QuarkusTests and some unit tests alongside each other and run them in the same step (e.g. with ./gradlew check). However one of them shows logs as expected and the other doesn't. From a user perspective, it is not clear why you would need to do something special for unit tests. Especially since nothing is noted in the documentation.

Maybe the quarkus gradle/maven plugins can be used to convert the quarkus logging config to the required config for normal unit tests?

andreas-eberle

comment created time in 2 months

issue commentquarkusio/quarkus

Log Level configuration not working in Unit Tests

Maybe it could be an idea to have something like a @QuarkusUnitTest annotation only setting up basic stuff like logging and not starting the whole server. I still think Quarkus should aim to make unit tests work the same way full-blown Quarkus tests work to provide a complete user experience.

andreas-eberle

comment created time in 2 months

issue commentquarkusio/quarkus

Log Level configuration not working in Unit Tests

It would be nice to add some documentation on how to get logging working in junit tests when testing quarkus code. I think this should be added to the Quarkus testing guide. At the moment unit tests aren't mentioned there.

andreas-eberle

comment created time in 2 months

issue commentquarkusio/quarkus

Log Level configuration not working in Unit Tests

How can I get the logging to work in the unit test? I thought this should work because unit tests are a normal part of a Quarkus project and thus I'd expect them to run and feel like any other test in a Quarkus project. I understand that unit tests are not a Quarkus feature but I think Quarkus should make them work and feel like other Quarkus stuff in a Quarkus project to make things consistent and understandable for users.

andreas-eberle

comment created time in 2 months

issue openedquarkusio/quarkus

Logger not propertly working in unit tests

Describe the bug When running unit tests (not @QuarkusTest) of a quarkus project, only severe log messages are printed, no matter what quarkus.log.level is configured. This can be reproduced with the reproducer code below or any fresh Kotlin Gradle Quarkus project created with code.quarkus.io.

E.g. if I run the following test

import org.junit.jupiter.api.Test
import java.util.logging.Logger

class ExampleLoggingTest {

    private val logger = Logger.getLogger(ExampleLoggingTest::class.java.name)

    @Test
    fun testHelloEndpoint() {
        logger.severe { "Log severe" }
        logger.info { "Log info" }
        logger.fine { "Log fine" }
        logger.finest { "Log finest" }
    }
}

with an application.properties file like this:

quarkus.log.level=TRACE

Only the following log message is printed:

Log severe

When I remove the following from the build.gradle file

test {
    systemProperty "java.util.logging.manager", "org.jboss.logmanager.LogManager"
}

I then also get the INFO log and the format changes. The result is

Juli 31, 2020 9:13:29 AM org.acme.ExampleLoggingTest testHelloEndpoint
SEVERE: Log severe
Juli 31, 2020 9:13:29 AM org.acme.ExampleLoggingTest testHelloEndpoint
INFO: Log info

When running the same test as a @QuarkusTest, the logging works as expected. Still, unit tests are an important part of tests and function the same way.

Expected behavior All log messages with a level higher than the one specified in the application.properties file should be printed in unit tests.

Actual behavior Only severe messages are logged by default and only severe plus info messages are logged when removing the test {...} block from the build.gradle file.

To Reproduce Steps to reproduce the behavior:

  1. Download reproducer project and unzip it (or add the test shown above to any plain Quarkus Kotlin Gradle project from code.quarkus.io) 2020-07-31_tests-logging.zip
  2. Run ./gradlew check
  3. Only the severe message is shown.

Configuration

quarkus.log.level=TRACE

Environment (please complete the following information):

  • Windows 10
  • Quarkus 1.6.1, 1.5.2, 1.4.1 (others not tested)
  • Kotlin
  • OpenJDK 11

created time in 2 months

pull request commentquarkusio/quarkus

Simplify fast jar dockerfiles by only using a single copy command.

Better safe than sorry! :)

andreas-eberle

comment created time in 2 months

issue commentquarkusio/quarkus

Provide ubi-minimal with java installed

Furthermore, it would be interesting to have a Java 14 version as well. If I understand correctly, Quarkus should run on Java 14, am I right? Unfortunately, I wasn't able to figure out how to install Java 14 with microdnf. Simply updating the java-11-openjdk-headless to java-14-openjdk-headless does not work.

andreas-eberle

comment created time in 2 months

pull request commentquarkusio/quarkus

Simplify fast jar dockerfiles by only using a single copy command.

@gsmet: Is there anything more you need for this?

andreas-eberle

comment created time in 2 months

Pull request review commentquarkusio/quarkus

Simplify fast jar dockerfiles by only using a single copy command.

 RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \ # Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size. ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" -COPY --chown=1001 ${build_dir}/quarkus-app/lib/ /deployments/lib/-COPY --chown=1001 ${build_dir}/quarkus-app/*.jar /deployments/-COPY --chown=1001 ${build_dir}/quarkus-app/app/ /deployments/app/-COPY --chown=1001 ${build_dir}/quarkus-app/quarkus/ /deployments/quarkus/+COPY --chown=1001 ${build_dir}/quarkus-app /deployments/

@gsmet: In the docker copy docs, I just found a note saying the following about the src path:

The directory itself is not copied, just its contents.

Furthermore, the pattern matching seems to the one Golang uses. Therefore I think it doesn't apply the standard linux semantics.

andreas-eberle

comment created time in 3 months

Pull request review commentquarkusio/quarkus

Simplify fast jar dockerfiles by only using a single copy command.

 RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \ # Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size. ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" -COPY --chown=1001 ${build_dir}/quarkus-app/lib/ /deployments/lib/-COPY --chown=1001 ${build_dir}/quarkus-app/*.jar /deployments/-COPY --chown=1001 ${build_dir}/quarkus-app/app/ /deployments/app/-COPY --chown=1001 ${build_dir}/quarkus-app/quarkus/ /deployments/quarkus/+COPY --chown=1001 ${build_dir}/quarkus-app /deployments/

Unfortunately this seems to unpack the directories in the quarkus-app directory. The ls now shows

app-1.0.0-SNAPSHOT.jar
boot
generated-bytecode.jar
main
quarkus-application.dat
quarkus-run.jar
run-java.sh
transformed-bytecode.jar
andreas-eberle

comment created time in 3 months

Pull request review commentquarkusio/quarkus

Simplify fast jar dockerfiles by only using a single copy command.

 RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \ # Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size. ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" -COPY --chown=1001 ${build_dir}/quarkus-app/lib/ /deployments/lib/-COPY --chown=1001 ${build_dir}/quarkus-app/*.jar /deployments/-COPY --chown=1001 ${build_dir}/quarkus-app/app/ /deployments/app/-COPY --chown=1001 ${build_dir}/quarkus-app/quarkus/ /deployments/quarkus/+COPY --chown=1001 ${build_dir}/quarkus-app /deployments/

I tested it locally by adding a RUN ls /deployments line after that and the log shows that the contents of the directory have been copied:

Step 13/17 : COPY --from=builder --chown=1001 /usr/src/app/bff/build/quarkus-app /deployments/
 ---> Using cache
 ---> 61e79dc8db06
Step 14/17 : RUN ls /deployments
 ---> Running in 5124e52a774d
app
lib
quarkus
quarkus-run.jar
run-java.sh
andreas-eberle

comment created time in 3 months

issue closedquarkusio/quarkus

Quarkus 1.6.0.Final: NoSuchMethodError SmallRyeConfigBuilder when building project

Describe the bug I just updated a project from Quarkus 1.5.2.Final to Quarkus 1.6.0.Final. When I run ./gradlew clean assemble --stacktrace I get the following error.

org.gradle.api.tasks.TaskExecutionException: Execution failed for task 'quarkusBuild'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:207)
        at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:263)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:205)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:186)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
        at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
        at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:356)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
Caused by: java.lang.NoSuchMethodError: 'io.smallrye.config.SmallRyeConfigBuilder io.smallrye.config.SmallRyeConfigBuilder.withInterceptors(io.smallrye.config.ConfigSourceInterceptor[])'
        at io.quarkus.runtime.configuration.ConfigUtils.configBuilder(ConfigUtils.java:74)
        at io.quarkus.runtime.configuration.ConfigUtils.configBuilder(ConfigUtils.java:58)
        at io.quarkus.deployment.ExtensionLoader.loadStepsFrom(ExtensionLoader.java:179)
        at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:98)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:244)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.createProductionApplication(AugmentActionImpl.java:87)
        at io.quarkus.gradle.tasks.QuarkusBuild.buildQuarkus(QuarkusBuild.java:118)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:104)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:49)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:42)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:726)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:693)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.run(ExecuteActionsTaskExecuter.java:569)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:395)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:387)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:84)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:554)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:537)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$300(ExecuteActionsTaskExecuter.java:108)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.executeWithPreviousOutputFiles(ExecuteActionsTaskExecuter.java:278)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:267)
        at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$1(ExecuteStep.java:33)
        at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:33)
        at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
        at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:67)
        at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:36)
        at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:49)
        at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:34)
        at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:43)
        at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
        at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
        at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:34)
        at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:44)
        at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:54)
        at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:38)
        at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
        at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:159)
        at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:72)
        at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:43)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:44)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:33)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:92)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:85)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:55)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:39)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:76)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:94)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:79)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:53)
        at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:74)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:78)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:78)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:39)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:40)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:28)
        at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:194)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:186)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
        at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
        at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:356)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)

Expected behavior It should still build.

Actual behavior It throws an error during build.

Environment (please complete the following information):

  • Windows 10
  • gradle 6.5.1
  • Kotlin (1.3.72)
  • OpenJDK 11

Additional Info We have the following dependencies:

    implementation 'io.quarkus:quarkus-kotlin'
    implementation 'io.quarkus:quarkus-resteasy'
    implementation 'io.quarkus:quarkus-resteasy-jsonb'
    implementation 'io.quarkus:quarkus-rest-client'
    implementation 'io.quarkus:quarkus-smallrye-reactive-messaging-kafka'
    implementation 'io.quarkus:quarkus-smallrye-health'
    implementation 'io.quarkus:quarkus-kubernetes-client'

    implementation 'org.jetbrains.kotlin:kotlin-stdlib'
    implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
    implementation 'com.fasterxml.jackson.module:jackson-module-kotlin'

    implementation 'org.jboss.resteasy:resteasy-multipart-provider'

    implementation 'com.google.code.gson:gson:2.8.6'
    implementation 'io.fabric8:openshift-client'

closed time in 3 months

andreas-eberle

issue commentquarkusio/quarkus

Quarkus 1.6.0.Final: NoSuchMethodError SmallRyeConfigBuilder when building project

Thanks @radcortez for this hint. I realized I had a module with an additional old gradle.properties file which should not have been there. After removing that file, it works fine now. Sorry for the false alarm and thanks again for the quick help!!

andreas-eberle

comment created time in 3 months

create barnchandreas-eberle/quarkus

branch : simplify-fastjar-dockerfile

created branch time in 3 months

PR opened quarkusio/quarkus

Simplify fast jar dockerfiles by only using a single copy command.

Use only a single COPY command in the fast jar dockerfile templates.

+2 -8

0 comment

2 changed files

pr created time in 3 months

issue commentquarkusio/quarkus

Using fast-jar without uber-jar results in no runner.jar beeing built

@gsmet: Maybe it would make sense to use the same property (quarkus.package.type) for both (fat-jar and fast-jar). Both options are packaging types and this would make it obvious that you cannot use both at the same type but only choose one packaging option.

andreas-eberle

comment created time in 3 months

issue commentquarkusio/quarkus

Using fast-jar without uber-jar results in no runner.jar beeing built

Is there some documentation on the fast-jar stuff? I haven't really found some. This would be an important thing to mention.

andreas-eberle

comment created time in 3 months

issue openedquarkusio/quarkus

Using fast-jar without uber-jar results in no runner.jar beeing built

Describe the bug When using only the quarkus.package.type=fast-jar config in the application.properties file no *-runner.jar is built. Only if you also specify the quarkus.package.uber-jar=true property, a fast uber-jar is built.

This behavior is the same for maven and gradle.

Expected behavior It should be enought to specify the quarkus.package.type=fast-jar option. If this option only makes sense when creating an uber-jar, then the uber-jar option should be set implicitly. Otherwise, this option alone is not working.

Actual behavior No *-runner.jar is built when only quarkus.package.type=fast-jar is set in application.properties.

To Reproduce Steps to reproduce the behavior:

  1. Create a new project with code.quarkus.io (it doesn't work for gradle as well as for maven)
  2. Set quarkus.package.type=fast-jar in the application.properties files
  3. Run ./mvnw package or ./gradlew assemble
  4. no *-runner.jar*

Configuration

#quarkus.package.uber-jar=true
quarkus.package.type=fast-jar

Environment (please complete the following information):

  • Windows 10
  • Quarkus 1.6.0

created time in 3 months

issue openedquarkusio/quarkus

Quarkus 1.6.0.Final: NoSuchMethodError SmallRyeConfigBuilder when building project

Describe the bug I just updated a project from Quarkus 1.5.2.Final to Quarkus 1.6.0.Final. When I run ./gradlew clean assemble --stacktrace I get the following error.

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':manager:quarkusBuild'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:207)
        at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:263)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:205)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:186)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
        at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
        at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:356)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
Caused by: java.lang.NoSuchMethodError: 'io.smallrye.config.SmallRyeConfigBuilder io.smallrye.config.SmallRyeConfigBuilder.withInterceptors(io.smallrye.config.ConfigSourceInterceptor[])'
        at io.quarkus.runtime.configuration.ConfigUtils.configBuilder(ConfigUtils.java:74)
        at io.quarkus.runtime.configuration.ConfigUtils.configBuilder(ConfigUtils.java:58)
        at io.quarkus.deployment.ExtensionLoader.loadStepsFrom(ExtensionLoader.java:179)
        at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:98)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:244)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.createProductionApplication(AugmentActionImpl.java:87)
        at io.quarkus.gradle.tasks.QuarkusBuild.buildQuarkus(QuarkusBuild.java:118)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:104)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:49)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:42)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:28)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:726)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:693)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.run(ExecuteActionsTaskExecuter.java:569)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:395)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:387)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:84)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:554)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:537)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.access$300(ExecuteActionsTaskExecuter.java:108)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.executeWithPreviousOutputFiles(ExecuteActionsTaskExecuter.java:278)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.execute(ExecuteActionsTaskExecuter.java:267)
        at org.gradle.internal.execution.steps.ExecuteStep.lambda$execute$1(ExecuteStep.java:33)
        at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:33)
        at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:26)
        at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:67)
        at org.gradle.internal.execution.steps.CleanupOutputsStep.execute(CleanupOutputsStep.java:36)
        at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:49)
        at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:34)
        at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:43)
        at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:73)
        at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:54)
        at org.gradle.internal.execution.steps.CatchExceptionStep.execute(CatchExceptionStep.java:34)
        at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:44)
        at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:54)
        at org.gradle.internal.execution.steps.SnapshotOutputsStep.execute(SnapshotOutputsStep.java:38)
        at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:49)
        at org.gradle.internal.execution.steps.CacheStep.executeWithoutCache(CacheStep.java:159)
        at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:72)
        at org.gradle.internal.execution.steps.CacheStep.execute(CacheStep.java:43)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:44)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:33)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:38)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:24)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:92)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:85)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:55)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:39)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:76)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:37)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:36)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:26)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:94)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:79)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:53)
        at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:74)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:78)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:78)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:39)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:40)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:28)
        at org.gradle.internal.execution.impl.DefaultWorkExecutor.execute(DefaultWorkExecutor.java:33)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:194)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:186)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
        at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
        at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:356)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)

Expected behavior It should still build.

Actual behavior It throws an error during build.

Environment (please complete the following information):

  • Windows 10
  • gradle 6.5.1
  • Kotlin (1.3.72)
  • OpenJDK 11

created time in 3 months

issue openedquarkusio/quarkus

Provide ubi-minimal with java installed

Description The current standard Quarkus JVM Dockerfile (as of provided by code.quarkus.io) is based on the registry.access.redhat.com/ubi8/ubi-minimal:8.1 image. Since this image does not include java and an updated microdnf, it always takes quite a while to build the first layers of this image. This is especially true for our CI builds, as they don't always have the previous layers cached (mutliple machines) and thus we have longer build times than needed.

Therefore, I would like to propose to provide something like a ubi-minimal-java:8.1-java11 or even a ubi-minimal-quarkus:8.1-quarkus1.5.2 image that includes everything of the standard JVM Dockerfile up until the actual application libraries are copied into the container.

Implementation ideas Automatically build a regularly updated version with the main part of the standard quarkus jvm Dockerfile (see below) and publish it on a docker repository.

FROM registry.access.redhat.com/ubi8/ubi-minimal:8.1

ARG JAVA_PACKAGE=java-11-openjdk-headless
ARG RUN_JAVA_VERSION=1.3.8

ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en'

# Install java and the run-java script
# Also set up permissions for user `1001`
RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \
    && microdnf update \
    && microdnf clean all \
    && mkdir /deployments \
    && chown 1001 /deployments \
    && chmod "g+rwX" /deployments \
    && chown 1001:root /deployments \
    && curl https://repo1.maven.org/maven2/io/fabric8/run-java-sh/${RUN_JAVA_VERSION}/run-java-sh-${RUN_JAVA_VERSION}-sh.sh -o /deployments/run-java.sh \
    && chown 1001 /deployments/run-java.sh \
    && chmod 540 /deployments/run-java.sh \
    && echo "securerandom.source=file:/dev/urandom" >> /etc/alternatives/jre/lib/security/java.security

# Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size.
ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager"

created time in 3 months

issue openedquarkusio/quarkus

Jax-RS @Context UriInfo injection does not work with constructors

Describe the bug I want to inject @Context uriInfo:UriInfo into my Jax-RS resource. This works when I use field injection but fails when constructor injection is used (see reproducer). With @ApplicationScoped beans, constructor injection works.

Expected behavior The injection of @Context UriInfo into the constructor should work as well.

Actual behavior Only field injection works.

To Reproduce Steps to reproduce the behavior:

  1. Download and unzip reproducer project 2020-07-06_context-constructor-injection.zip

  2. Run ./mvnw quarkus:dev in the root directory of the project. The application startup crashes with

Caused by: javax.enterprise.inject.spi.DeploymentException: javax.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type javax.ws.rs.core.UriInfo and qualifiers [@Default]
	- java member: org.acme.ExampleResource#<init>()
	- declared on CLASS bean [types=[org.acme.ExampleResource, java.lang.Object], qualifiers=[@Default, @Any], target=org.acme.ExampleResource]
	at io.quarkus.arc.processor.BeanDeployment.processErrors(BeanDeployment.java:978)
	at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:242)
	at io.quarkus.arc.processor.BeanProcessor.initialize(BeanProcessor.java:146)
	at io.quarkus.arc.deployment.ArcProcessor.validate(ArcProcessor.java:359)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:932)
	at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2046)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1578)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1452)
	at java.base/java.lang.Thread.run(Thread.java:834)
	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
Caused by: javax.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type javax.ws.rs.core.UriInfo and qualifiers [@Default]
	- java member: org.acme.ExampleResource#<init>()
	- declared on CLASS bean [types=[org.acme.ExampleResource, java.lang.Object], qualifiers=[@Default, @Any], target=org.acme.ExampleResource]
	at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:486)
	at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:362)
	at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:234)
	... 14 more
  1. In class ExampleResource, comment out the constructor injection line (#1) and comment in the field injection (#2).

Environment (please complete the following information):

  • Quarkus 1.5.2.Final
  • OpenJDK 11
  • Windows 10

created time in 3 months

issue commentquarkusio/quarkus

Loading native OpenCV library doesn't work with quarkusDev but with build

@jaikiran: You can find the complete stacktrace of ./gradlew quarkusDev here: https://gist.github.com/andreas-eberle/2c395658acbe363cf2316d27d750e73a

My JDK (java -version):

openjdk version "11" 2018-09-25
OpenJDK Runtime Environment 18.9 (build 11+28)
OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)

I pass in the java.library.path differently since just setting java.library.path for ./gradlew quarkusDev only sets the library path for gradle but not for the actual application. Therefore I added a line in the gradle script adding the contents of the OPENCV_SO variable to the library path for the application. I verified that the path is actually set (if you don't set the path, the System.loadLibrary() command fails instead of the usage of the library). Alternatively you can add the path to the opencv java library to your PATH variable.

andreas-eberle

comment created time in 3 months

push eventarconsis/quarkus-benchmarks

Andreas Eberle

commit sha 6c34fa70d5fea108e9770ec7f334c0807377fdf5

Increase number of connections of postgres

view details

push time in 3 months

create barncharconsis/quarkus-benchmarks

branch : quarkus-1.5.2

created branch time in 3 months

issue commentquarkusio/quarkus

Loading native OpenCV library doesn't work with quarkusDev but with build

@gsmet: I just checked and it behaves the same with maven. While it works if you first package the application and run the jar, it doesn't work if you run ./mvnw quarkus:dev.

andreas-eberle

comment created time in 3 months

issue openedquarkusio/quarkus

Loading native OpenCV library doesn't work with quarkusDev but with build

Describe the bug To be able to use OpenCV in a Java application, you have to load the native library with System.loadLibrary(Core.NATIVE_LIBRARY_NAME). I tried to do this in a basic quarkus service (see reproducer below). The library seems to be loaded (no error is thrown when System.loadLibrary(...) is called.

However, when running gradlew quarkusDev, the library is not available when it is actually used and then causes a crash with Caused by: java.lang.UnsatisfiedLinkError: 'long org.opencv.core.Mat.n_Mat()'.

When running the same code as a jar application after it was build with gradlew assemble, everything works fine.

Expected behavior The native library loading should work fine with quarkusDev as well.

Actual behavior Native library loading only works with a build of the quarkus application but fails with quarkusDev.

To Reproduce Steps to reproduce the behavior:

  1. Download the reproducer project and unzip it. opencv-not-loading.zip
  2. Install OpenCV 4.1.0 (it must be this version, because the java wrapper is built for this version). Have a look at the opencv installation instructions. For Windows, prebuilt binaries exist. For linux, you might have to build it from the sources. If so, make sure to include the Java wrapper.
  3. In the reproducer project, run OPENCV_SO=<PATH to the directory containing your opencv_java410.dll/libopencv_java410.so> ./gradlew quarkusDev. The server tries to load the native libary and use it on startup (see ServerMain.kt). It will crash with an java.lang.UnsatisfiedLinkError.
  4. Run ./gradlew assemble and then java -Djava.library.path=<PATH to the directory containing your opencv_java410.dll/libopencv_java410.so> -jar build\code-with-quarkus-1.0.0-SNAPSHOT-runner.jar. The application starts and shows a log like the following
Going to load native library...
Did load native library.
Going to use native library...
2265572378912
Successfully used native library.
...

Environment (please complete the following information):

  • Windows 10 x64
  • Quarkus 1.5.2.Final & Quarkus 1.6.0.CR1
  • OpenCV 4.1.0
  • gradle
  • Kotlin

created time in 3 months

more