Siirry pääsisältöön

Jetty

Avaa ChatGPT:ssä

Maven Jetty -liitännäinen suorittaa sovelluksen liitetyssä Jetty-palvelimessa suoraan projektista. Arkkitehtuuriprojekti asettaa compile webforj:watch jetty:run oletus Maven -tavoitteekseen, joten mvn ilman argumentteja kääntää sovelluksen, käynnistää frontend watch ja palvelee sovellusta Jettyllä.

Vaatimukset

Jetty-projekti ilmoittaa kehitystyökalut itse, kehityskäytöissä käytetyssä profiilissa:

pom.xml
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<dependencies>
<dependency>
<groupId>com.webforj</groupId>
<artifactId>webforj-devtools</artifactId>
</dependency>
</dependencies>
</profile>
</profiles>

Versio tulee webforJ:n materiaaliluettelosta (BOM). Profiili pitää riippuvuuden pakatusta war-tiedostosta eristyksissä. Projekti, joka on luotu arkkitehtuurista, sisältää tämän profiilin.

Live-latauksen käyttöönottaminen

webforj.conf
webforj.devtools.livereload.enabled = true

Avaimet ovat samoja, joita Spring Boot -sovellus asettaa application.properties-tiedostossa, lueteltuna asetuksissa.

Luokka muutokset

Kun hotswap-työkalu on määritetty, työkalu soveltaa luokkamuutokset eikä Jetty julkaise mitään. Kaksi Jetty-ominaisuutta tukevat tätä, ja arkkitehtuuriprojekti asettaa molemmat:

  • scan on 0, joka sammuu Jettyn tiedostoskannauksen.
  • deployMode jää asettamatta. Hotswap vaatii forkattu tilan, ja liitännäinen valitsee sen. Käännä, joka asettaa deployMode:n toiseen arvoon, käynnistyy ilman työkalua ja kirjaa sen.

Ilman hotswap-työkalua aseta scan aikaväli sekunneissa, ja Jetty julkaisee sovelluksen, kun käännetyt luokat tai resurssit muuttuvat:

OminaisuusKuvausOletus
scanSekuntien väli käännetyille tulosteille, asetettuna jetty.scan-ominaisuutena. 0 sammuttaa skannaamisen. Pidemmät välin vähentävät kuormitusta ja viivästyttävät julkaisemista.1

Käyttöhuomiot

  • Muisti ja CPU: alhaiset scan-arvot lisäävät resurssien kulutusta suurilla projekteilla. Pidemmät välin vähentävät sitä ja viivästyttävät julkaisemista.
  • Vain kehitykseen: Jetty-liitännäinen ei ole tarkoitettu tuotantokäyttöön.
  • Istunnot: julkaisu voi poistaa käyttäjäistunnot. Hotswap-työkalu soveltaa muutoksia ilman julkaisemista, ja istunto säilyy.