vaadin-jandex
Work on this project has been kindly sponsored by Inacta AG.
Builds the Jandex index of all Vaadin core libraries. This enables Vaadin-based apps to run on top of Quarkus+Undertow.
There are two artifacts built:
- vaadin-core-jandex builds the Jandex index for vaadin-core(only the open-source components)
- vaadin-jandex builds the Jandex index for vaadin(both the open-source components and the pro components such as Board, GridPro, CRUD etc).
Example
See the vaadin-quarkus example app for more details.
Available on JCenter and Maven Central
Browse the vaadin-jandex on Maven Central to see versions available. The vaadin-jandex library tracks Vaadin's release versioning; simply use the same vaadin-jandex as is your Vaadin version.
The JCenter -> Maven Central sync has been broken lately, therefore you can find more releases at vaadin-jandex on JCenter. You can add JCenter to your pom.xml by adding:
    <repository>
      <id>jcenter</id>
      <url>https://jcenter.bintray.com/</url>
    </repository> 
In order to add Vaadin Jandex index to your app, simply add the following dependency into your project:
<dependency>
  <groupId>com.github.mvysny.vaadin-jandex</groupId>
  <artifactId>vaadin-jandex</artifactId>
  <version>14.4.6</version>
</dependency> 
(or use vaadin-core-jandex if you're only using vaadin-core components).
How to build a custom version
- git clone this project
- Edit gradle.propertiesand modify the Vaadin version to the version of your choice, e.g. 14.4.6.
- Edit build.gradle.ktsand set the version line toversion = "${properties["vaadin_version"]}"(get rid of the -SNAPSHOT suffix)
- Run ./gradlew publishToMavenLocal. The library is now installed in your local repo.
- Modify your app's pom.xmland add the dependency on this library:
<dependency>
  <groupId>com.github.mvysny.vaadin-jandex</groupId>
  <artifactId>vaadin-jandex</artifactId>
  <version>14.4.6</version>
</dependency> 
(or use vaadin-core-jandex if you're only using vaadin-core components).
- Run your vaadin-quarkus project - it should now start as usual.
Temporary
This project is just temporary; the goal is to have the Jandex index merged into Vaadin artifacts themselves. In order to achieve that, please vote for the following tickets:
Releasing
- Edit gradle.propertiesand setvaadin_versionto the desired version.
- Edit build.gradle.ktsand remove-SNAPSHOTin theversion=stanza
- Commit with the commit message of simply being the desired Vaadin version.
- git tag the commit with the same tag name as the commit message above.
- git push,- git push --tags
- Run ./gradlew clean build publishthen follow the release procedure on OSSRH/MavenCentral
- Add the -SNAPSHOTback and commit and push.
License
See License.
 JarCasting
 JarCasting