Änderungen von Dokument Plugin-Entwicklung


Von Version 4.10
bearbeitet von awa
am 25.02.2022, 13:02
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 5.6
bearbeitet von awa
am 25.02.2022, 13:22
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -76,7 +76,7 @@
76 76  Alle Abhängigkeiten zu {{formcycle case="dat"/}} sind im scope "provided" zu definieren!
77 77  {{/info}}
78 78  
79 -Ausgangspunkt für die Entwicklung von Plugin ist das Maven-Artefakt //fc-plugin-common//. Dieses enthält die einzelnen Plugin-Schnittstellen und steht auch auf [[unserere Downloadseite zur Verfügung>>url:http://artifactory.xima-services.de/artifactory/fc-plugin-dev/de/xima/fc/fc-plugin-common/]].
79 +Ausgangspunkt für die Entwicklung von Plugin ist das Maven-Artefakt //fc-plugin-common//. Dieses enthält die einzelnen Plugin-Schnittstellen und steht auch auf [[unserere Downloadseite zur Verfügung>>url:http://artifactory.xima-services.de/artifactory/fc-plugin-dev/de/xima/fc/fc-plugin-common||target="_blank"]].
80 80  
81 81  In der //pom.xml// des Plugin-Projekts kann diese Abhängigkeit wie folgt eingebunden werden:
82 82  
... ... @@ -194,11 +194,15 @@
194 194  == Maven-Archetypes ==
195 195  
196 196  {{figure image="eclipse-archetype.png" width="500"}}
197 - Hinzufügen des Archetypes-Katalogs in Eclipse: {{{https://artifactory.xima-services.de/artifactory/libs-release-local/archetype-catalog.xml}}}
197 + Hinzufügen des Archetypes-Katalogs in Eclipse
198 198  {{/figure}}
199 199  
200 -Für einige häufig verwendete Plugin-Typen stehen [[Maven-Archetypes>>url:https://maven.apache.org/guides/introduction/introduction-to-archetypes.html]] bereits, um schnell ein Maven-Projekt aufsetzen zu können.
200 +{{figure image="eclipse-archetype-select.png" width="500"}}
201 + Auswahl eines Archetypes beim Erstellen eines Maven-Projekts in Eclipse
202 +{{/figure}}
201 201  
204 +Für einige häufig verwendete Plugin-Typen stehen [[Maven-Archetypes>>url:https://maven.apache.org/guides/introduction/introduction-to-archetypes.html||target="_blank"]] bereits, um schnell ein Maven-Projekt aufsetzen zu können.
205 +
202 202  Voraussetzung für die Verwendung ist, dass in den //~~/.m2/settings.xml// wie oben beschrieben das XIMA-Artifactory eingerichtet wurde. Dann kann etwa über die Kommandozeile wie folgt eine Archetype generiert werden:
203 203  
204 204  {{code}}
... ... @@ -207,16 +207,61 @@
207 207  
208 208  Es werden dann einige wenige Informationen wie die gewünschten Maven-Koordinaten des neuen Plugin-Projekts abgefragt und anschließend ein neues vorkonfiguriertes Projekt erstellt.
209 209  
210 -Alle vorhandenen Archetypes und deren Versionen können im [[Archetype-Katalog>>url:https://artifactory.xima-services.de/artifactory/libs-release-local/archetype-catalog.xml]] eingesehen werden.
214 +Alle vorhandenen Archetypes und deren Versionen können im [[Archetype-Katalog>>url:https://artifactory.xima-services.de/artifactory/libs-release-local/archetype-catalog.xml||target="_blank"]] eingesehen werden.
211 211  
212 -In Eclipse kann der Archetype-Katalog in den Einstellungen hinzugefügt werden. Bei der Erstellung eines neuen Maven-Projekt werden dann alle verfügbaren Archetypes angezeigt.
216 +In Eclipse kann der Archetype-Katalog in den Einstellungen hinzugefügt werden. Bei der Erstellung eines neuen Maven-Projekt werden dann alle verfügbaren Archetypes angezeigt:
213 213  
218 +{{code language="plaintext"}}https://artifactory.xima-services.de/artifactory/libs-release-local/archetype-catalog.xml{{/code}}
219 +
214 214  == Deploy-Plugin
215 215  
216 -TODO
222 +Um beim Entwickeln nicht jedes Mal eine neue Plugin-Version manuell über die Oberfläche hochladen zu müssen, kann das Deploy-Plugin verwendet werden. Dieses besteht aus 2 Teilen:
217 217  
218 -== FC-Server-Plugin
224 +* Ein Maven-Plugin, welches nach dem Bauen das Plugin via HTTP an einen laufenden {{formcycle/}}-Server sendet
225 +* Ein Plugin für {{formcycle/}}, welche die Gegenstelle in {{formcycle/}} bereitstellt und das Plugin aus dem HTTP-Request in {{formcycle/}} installiert.
219 219  
220 -TODO
227 +Weitere Details können im [[Hilfe-Artikel zum Deploy-Plugin>>doc:Formcycle.PluginDocumentation.FormcycleDeployPluginPlugin]] nachgelesen werden. Für die meisten Fälle reicht folgende Konfiguration in der //pom.xml// des Plugin-Projekts aus:
221 221  
229 +{{code language="xml"}}
230 + <properties>
231 + <fc-deploy-plugin-maven-plugin.version>7.0.1<fc-deploy-plugin-maven-plugin.version/>
232 + <build>
233 + <plugins>
234 + <plugin>
235 + <groupId>de.xima.fc.maven.plugin</groupId>
236 + <artifactId>fc-deploy-plugin-maven-plugin</artifactId>
237 + <version>${fc-deploy-plugin-maven-plugin.version}</version>
238 + <executions>
239 + <execution>
240 + <id>upload</id>
241 + <phase>install</phase>
242 + <goals>
243 + <goal>deploy</goal>
244 + </goals>
245 + </execution>
246 + </executions>
247 + </plugin>
248 + </plugins>
249 + </build>
250 +{{/code}}
222 222  
252 +Sofern das Deploy-Plugin bereits in {{formcycle/}} installiert ist, kann das Plugin-Projekt dann beim Bauen wie folgt hochgeladen werden:
253 +
254 +{{code language="bash"}}
255 +mvn clean install -DfcDeployUrl=http://localhost:8080/xima-formcycle -DfcDeployToken=admin
256 +{{/code}}
257 +
258 +Wird Eclipse benutzt, kann auch eine Launch-Configuration mit den //fcDeployUrl// und dem //fcDeployToken// angelegt werden.
259 +
260 +== FC-Server-Plugin ==
261 +
262 +Zum Testen eines Plugins ist es erforderlich, einen laufenden {{formcycle/}}-Server zu haben. Zur Vereinfachung der Entwicklung gibt es das //fc-server-maven-plugin//, welches mittels eines einzigen Befehls ein fertig eingerichtetes {{formcycle/}} lokal startet, wo auch bereits das Deploy-Plugin vorinstalliert ist.
263 +
264 +Sofern wie oben beschrieben in //~~/.m2/settings.xml// die //pluginGroup// hinterlegt wurde, kann in einem beliebiegen Verzeichnis wie folgt ein {{formcycle/}}-Server per Maven gestartet werden:
265 +
266 +{{code language="bash"}}
267 +mvn fc-server:run-ms-war -DxfcVersion=7.0.10
268 +{{/code}}
269 +
270 +Dies funktioniert auch in einem Ordner ohne Maven-Projekt. Falls keine {{formcycle/}} angegeben ist, wird eine Standard-Version genommen.
271 +
eclipse-archetype-select.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.awa
Größe
... ... @@ -1,0 +1,1 @@
1 +66.8 KB
Inhalt