Spring Boot
Dans une application Spring Boot, le plugin de construction webforJ fournit les outils de développement pour les exécutions de développement. Le projet ne déclare aucune dépendance pour eux, et ils ne font jamais partie de l'application empaquetée.
Exigences
La dépendance de démarrage et le plugin de construction. Un projet créé à partir d'un archetype en a les deux.
- Maven
- Gradle
<dependency>
<groupId>com.webforj</groupId>
<artifactId>webforj-spring-boot-starter</artifactId>
</dependency>
<plugin>
<groupId>com.webforj</groupId>
<artifactId>webforj-maven-plugin</artifactId>
<version>${webforj.version}</version>
<extensions>true</extensions>
</plugin>
dependencies {
implementation 'com.webforj:webforj-spring-boot-starter'
}
Activer le rechargement en direct
webforj.devtools.livereload.enabled=true
server.shutdown=immediate
Démarrez l'application comme d'habitude, mvn avec Maven ou ./gradlew bootRun avec Gradle. Les modifications Java s'appliquent après une compilation, les modifications de feuille de style et d'image s'appliquent sur place, et les sources sous src/main/frontend se reconstruisent par le watch frontend. Les autres clés sont listées dans les paramètres.
Spring DevTools
Spring DevTools est optionnel, le rechargement en direct fonctionne sans lui. Pour utiliser son modèle de redémarrage, ajoutez sa dépendance :
- Maven
- Gradle
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
dependencies {
developmentOnly 'org.springframework.boot:spring-boot-devtools'
}
Avec Spring DevTools présent, un changement compilé redémarre le contexte Spring et le navigateur se rafraîchit lorsque le redémarrage est terminé. Avec un outil de hotswap configuré également, l'outil applique les mises à jour de classe et le redémarrage reste désactivé.
Builds de production
mvn package et ./gradlew bootJar produisent une application sans outils de développement, sans exclusion, profil ou propriété requise. La propriété webforj.devtools.livereload.enabled n'a aucun effet dans une application empaquetée.