Zum Hauptinhalt springen

webforJ Build-Plugin 26.01

In ChatGPT öffnen

Das webforJ-Build-Plugin führt die Build-Zeitarbeiten von webforJ als Teil Ihres Maven- oder Gradle-Builds aus. Sie fügen es einmal hinzu, und es bindet seine Ziele an die Phasen, die Sie bereits ausführen, ohne ein separates Frontend-Projekt zum Synchronisieren. Es steuert den Frontend-Bundler, kompilieren das Frontend, führt die Frontend-Tests aus, serviert den Entwicklungswatch und fügt ein Hotswap-Tool zu der Anwendung hinzu, die es startet.

Hinzufügen des Plugins​

Ein webforJ-Projekt, das aus einem Archetyp erstellt wurde, hat das Plugin bereits. Um es zu einem bestehenden Projekt hinzuzufügen:

Die Deklaration des Plugins mit <extensions>true</extensions> bindet seine Ziele an den Build, ohne dass Ausführungsblöcke geschrieben werden müssen:

pom.xml
<plugin>
<groupId>com.webforj</groupId>
<artifactId>webforj-maven-plugin</artifactId>
<extensions>true</extensions>
</plugin>

Ziele und Aufgaben​

Drei Ziele sind an Phasen gebunden, die Sie bereits ausführen, sodass ein normales mvn package oder ./gradlew build eine Anwendung mit ihrem Frontend kompiliert, und die Testphase führt die Frontend-Tests zusammen mit den Java-Tests aus. Der Watch ist der, den Sie während der Entwicklung manuell starten:

Maven-ZielGradle-AufgabeAusgeführtWas es tut
bundlewebforjBundleprepare-package, vor jeder Jar- und War-DateiKompiliert das Frontend für die verpackte Anwendung
testwebforjTestmit der TestphaseFührt die Frontend-Tests aus
cleanwebforjCleanFrontendmit der Clean-PhaseEntfernt das generierte Frontend
watchwebforjWatchmanuell, neben der AnwendungBaut bei Änderungen während der Entwicklung neu
push-keyswebforjPushKeysmanuell, einmal pro BereitstellungGeneriert das Schlüsselpaar für Push-Benachrichtigungen und druckt die Konfigurationszeilen aus
bbj-setupNur Mavenmanuell, auf der BBj-MaschineInstalliert BBjShip im lokalen BBj und aktiviert seinen Bereitstellungspunkt
bbj-packageNur Mavenmit der Paketphase, mit einem <bbj>-BlockSchreibt das BBj-Bereitstellungsarchiv
bbj-deployNur Mavenmit der Installationsphase, mit einem <bbj>-BlockStellt die Anwendung bereit bei BBjServices
bbj-undeployNur MavenmanuellEntfernt die Anwendung von BBjServices

Starten Sie den Watch als Ziel vor demjenigen, das die Anwendung ausführt, z. B. mvn compile webforj:watch spring-boot:run. Ein Archetyp-Projekt legt dies als das Standardziel fest, sodass mvn allein alles startet. Das Verhalten beim Neuladen wird in Frontend watch behandelt.

Überspringen Sie die Frontend-Tests zusammen mit den Java-Tests, -DskipTests oder -Dmaven.test.skip mit Maven und -PskipTests mit Gradle.

Optionen​

Setzen Sie Optionen als Maven-<configuration>-Elemente oder als Gradle-webforj { }-Erweiterungswerte. Jede Maven-Option außer plugins und hotswap akzeptiert auch eine -D-Eigenschaft in der Befehlszeile. Die beiden Build-Tools spiegeln sich gegenseitig wider:

Maven-ElementMaven-EigenschaftGradleStandardZweck
bunVersionwebforj.bundler.versionbunVersionverwaltetFixieren Sie die Bun-Version für reproduzierbare Builds
bunPathwebforj.bundler.pathbunPathherunterladenVerwenden Sie eine vorhandene Bun-Binärdatei, anstatt sie herunterzuladen
cacheDirwebforj.bundler.cacheDircacheDir${user.home}/.webforj/bunWo verwaltete Bun-Binärdateien zwischengespeichert werden
sourceRootwebforj.bundler.sourceRootsourceRootsrc/main/frontendWo die Frontend-Eingangsquellen liegen
workDirwebforj.bundler.workDirworkDirtarget/bundleWo das Plugin seine generierten Build-Dateien schreibt
plugins—plugins—Schalten Sie eine Erweiterung durch ID ein oder aus, z. B. webforj-tailwind
excludePackageswebforj.bundler.excludePackagesexcludePackages—Paketpräfixe, die während des Annotation Scans übersprungen werden sollen
eagerwebforj.bundler.eagereagerfalseLaden Sie das gesamte Frontend beim Start der Anwendung anstelle von pro Ansicht, siehe Eager bundle
testArgswebforj.bundler.testArgstestArgs—Zusätzliche Argumente, die an den Frontend-Testläufer übergeben werden
hotswap—hotswap—Fügen Sie ein Klassenaktualisierungstool zu der Anwendung hinzu, die der Build startet, siehe Hotswap

Zum Beispiel, um die Bun-Version festzulegen und Tailwind zu aktivieren:

pom.xml
<plugin>
<groupId>com.webforj</groupId>
<artifactId>webforj-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<bunVersion>1.3.0</bunVersion>
<plugins>
<webforj-tailwind>true</webforj-tailwind>
</plugins>
</configuration>
</plugin>
webforJ-Team

Brauchst du Hilfe?

Sprechen Sie mit den Entwicklern von webforJ über Ihr Projekt.

Kontaktieren Sie uns