Spring Boot
In een Spring Boot-app levert de webforJ build-plugin de ontwikkelingshulpmiddelen voor ontwikkelingsuitvoeringen. Het project verklaart geen afhankelijkheid voor deze hulpmiddelen en ze zijn nooit onderdeel van de verpakte app.
Vereisten
De starterafhankelijkheid en de build-plugin. Een project dat is gemaakt vanuit een archetype heeft beide.
- 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'
}
Live reload inschakelen
webforj.devtools.livereload.enabled=true
server.shutdown=immediate
Start de app zoals gebruikelijk, mvn met Maven of ./gradlew bootRun met Gradle. Java-wijzigingen worden toegepast na een compilatie, stylesheet- en afbeeldingswijzigingen worden ter plekke toegepast, en bronnen onder src/main/frontend worden opnieuw opgebouwd via de frontend watch. De overige sleutels zijn vermeld in de instellingen.
Spring DevTools
Spring DevTools is optioneel, live reload werkt er zonder. Om het herstartmodel te gebruiken, voeg je de afhankelijkheid toe:
- 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'
}
Met Spring DevTools aanwezig, herstart een gecompileerde wijziging de Spring-context en wordt de browser vernieuwd wanneer de herstart is voltooid. Met een hotswap-tool ook geconfigureerd, worden de klasse-updates toegepast en blijft de herstart uitgeschakeld.
Productiebouw
mvn package en ./gradlew bootJar produceren een app zonder ontwikkelingshulpmiddelen, zonder dat uitsluiting, profiel of eigenschap vereist is. De eigenschap webforj.devtools.livereload.enabled heeft geen effect in een verpakte app.