2017-12-04 11 views
0

Ich möchte eine WAR-Datei auf einem Wildfly 10-Server bereitstellen und eine Klasse dem globalen Klassenpfad zugänglich machen. Ich möchte diese Klasse in anderen Kriegsdateien verwenden können.Klasse in den globalen Klassenpfad laden (Wildfly)

Wissen Sie, ob dies bei deploytime möglich ist?

Mit freundlichen Grüßen Alex

Antwort

0

Verschiedene Krieg Dateien im Verzeichnis deployments werden von verschiedenen Klassenlader getrennt. Daher können Sie nicht von einer Kriegsklasse aus auf einen anderen Krieg zugreifen.

Wenn Sie "globale" Funktionen benötigen, auf die alle Bereitstellungen zugreifen können, können Sie ein neues Modul hinzufügen. Passen Sie und rufen Sie den folgenden Befehl ein:

./jboss-cli.sh -c --command="module add --name=<your-module> --resources=<path-to-file>/<your-jar>.jar --dependencies=<your-dependencies-comma-separated>" 

Dies wird einen neuen Ordner unter $JBOSS_HOME\modules mit einer module.xml Datei neben Ihrem jar erstellen. Weitere Informationen zum Hinzufügen von Modulen finden Sie beispielsweise in here.

Dann eine Abhängigkeit von diesem neuen Modul in Ihren beiden Kriegen Dateien hinzufügen, entweder durch die Modulnamen des Zusatz Class-Path Eintrag in Ihrer MANIFEST.MF-Datei oder durch eine dedizierte jboss-deployment-structure.xml Datei liefert (für weitere Informationen siehe here).

Verwandte Themen