Ich muss einen Server (implementiert in einer Java-Klasse) von Maven ausführen, aber wenn ich das exec: java-Ziel verwende, wird maven blockiert und es wird nicht an die nächsten Phasen übergeben, die eine Verbindung zum Server herstellen.
Gibt es eine Möglichkeit, die exec: java-Task asynchron auszuführen, ohne die maven-Ausführung zu unterbrechen?
Danke!
Sie könnten exec-maven-plugin verwenden, um ein Shell-Skript auszuführen, das Ihren Prozess startet und sich von diesem löst (Prozess im Hintergrund laufen lassen). Etwas wie das:
%Vor%Hier könnte run.sh wie folgt aussehen (für U * nix-Plattform):
%Vor%Das sollte den Trick machen.
Wenn Sie diese Server-Klasse ausführen, um weitere Integrations-Testschritte in Ihrem Maven POM auszuführen, ist es besser, ein Continuous Integration Tool wie Jenkins , es hat eine Menge Plugins , mit denen du deine eigenen laufen lassen kannst Klassen, Starten und Stoppen von Servern, Bereitstellung von Anwendungen und viele andere Möglichkeiten, und es ist kostenlos.
Tags und Links maven