Open Vinetos opened 1 year ago
/cc @cescoffier (devui), @phillip-kruger (devui)
This happens when I change the deployment artifactID to something which is not following Quarkus convention (
-deployment).
You shouldn't do that. The convention is important.
This happens when I change the deployment artifactID to something which is not following Quarkus convention (-deployment).
You shouldn't do that. The convention is important.
That is right but the configuration allows it.
That right but the configuration allows it.
To elaborate a bit on @Vinetos, we migrated a internal multi-module dependency from been a normal dependency to being a quarkus extension. Back then, we only modified what was necessary to make it work which was to create a new deployment module and use a previous module as the runtime module. We knew of the convention, but did not feel pressured by it since everything seemed to be working as it should. This made place to a tree like this:
framework
├── framework-core <- runtime extension artifact, old module
├── framework-deployment <- deployment module, new module
├── framework-messaging <- old module
[...]
└── framework-persistence <- old module
Naturally, we would have used the convention if this was a new project or if the documentation specified that this naming convention is mandatory.
Sorry it took so long but I digged a bit more today and you're completely right that it actually shows an important issue in how we identify the extension for Dev UI elements.
We need to improve on that as the current coding is both brittle (as you experienced it) and quite inefficient.
Describe the bug
I am creating an extension for my Quarkus project, and I have an issue where the BuildStep of creating the Dev UI cards and pages is executed but the result is not displayed.
This happens when I change the deployment artifactID to something which is not following Quarkus convention (
<runtime>-deployment
).Expected behavior
DevUI should display the custom card and its content
Actual behavior
DevUI only display the generated default card
How to Reproduce?
Steps to reproduce the issue : 1- Create an extension
mvn io.quarkus.platform:quarkus-maven-plugin:3.2.2.Final:create-extension -N -DgroupId=com.example -DextensionId=hello-extension
2- Configure DevUI for the extension
2-1 Add
vertx-http-dev-ui-spi
todeployment/pom.xml
Details
```xml2-2 Add the DevUIProcessor method :
Details
```java @BuildStep(onlyIf = IsDevelopment.class) void createJokes(BuildProducer3- Test the extension the see the correct behavior.
DevUI show the custom card.
4- Rename the artifactId in
deployment/pom.xml
by adding-test
5- Update the deployment configuration in
runtime/pom.xml
in consequences6- Test again. The DevUI only shows the generated card.
Output of
uname -a
orver
Linux 5.10.16.3-microsoft-standard-WSL2 and NixOS 23.11 (unstable)
Output of
java -version
openjdk version "17.0.7" 2023-04-18
GraalVM version (if different from Java)
No response
Quarkus version or git rev
3.2.2.Final
Build tool (ie. output of
mvnw --version
orgradlew --version
)Apache Maven 3.8.6
Additional information
I am ready to contribute in order to resolve this issue but I will need some help to debug beceause I am new to Quarkus