-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Gradle: create quarkusDeploymentOnlyClasspath configuration #17473
Gradle: create quarkusDeploymentOnlyClasspath configuration #17473
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, as you said, this won't be necessary in the future
There is something fishy with the test fixture tests. It looks like it's pulling in a different version of Quarkus/plugin
|
This workflow status is outdated as a new workflow run has been triggered. Failing Jobs - Building 8aed262
Full information is available in the Build summary check run. Test Failures⚙️ Gradle Tests - JDK 11 #📦 integration-tests/gradle/build/resources/test/test-fixtures-multi-module/application✖ 📦 integration-tests/gradle✖ ⚙️ Gradle Tests - JDK 11 Windows #📦 integration-tests/gradle/build/resources/test/test-fixtures-multi-module/application✖ 📦 integration-tests/gradle✖ |
It's the AppModel initialization in the fixtures that is messed up. |
The fixture jar may be excluded of the deployment classpath. I think I had a similar issue. I will give it a try. |
I don't think it's about that. In the test you apply the Quarkus plugin to a module that isn't a Quarkus app, it simply imports the quarkus-bom and depends on quarkus-junit5. This initializes the beforeTest action that serializes an empty AppModel and sets the system property to its location. Then during the tests, this AppModel is deserialized and is used to initialize CuratedApplication. But it has no extension dependencies and misses the classloading config. Which results in this weird error I posted above. |
This maybe related to |
Actually the app doesn't seem to include any extension dependency. Is resteasy missing? |
Adding
The other issue is that the classpath with test fixtures is wrong, i.e. the runtime classpath includes deployment dependencies. |
@glefloch would you mind looking into these issues? |
Yes, I'm checking out your branch. |
I think you should be able to reproduce it with the |
I think this PR is good to merge. I'll add a little adjustment though. |
I may have a local change that also contributed to the mess. |
I think this PR is good to merge. |
we should fix the test before merging no ? |
Either way will be ok to me. AFAICT, the test failure isn't related to the change in the PR. |
…figuration for the deployment only dependencies
8aed262
to
d7e8da7
Compare
I was able to reproduce the error on your branch. I pushed a fix that just add |
Thanks @glefloch |
Currently the exclusions configured in the Gradle scripts are ignored when resolving the deployment dependencies.
Switching to the detached configuration to a named one seems to fix it.
@glefloch this may not be needed with the refactoring you are working on but until it's merged we need this.