Wie der Titel schon sagt, wollte ich eine Umgebung erstellen, in der die Schrittausführung nur mit dem Befehl Maven ausgeführt werden kann.
Ich hatte nicht genügend Ressourcen, um Docker oder VM zu starten, daher konnte ich es kaum erwarten, zu klonen, auszuchecken und zu erstellen, aber ich wollte trotzdem die Überprüfung der Laufzeitvariablen und die Überprüfung der Versionsunterschiede durchführen.
Also dachte ich, ich sollte versuchen, die alte ** Codehaus Cargo (im Folgenden Cargo) ** zu verwenden, also wurde dieser Artikel geschrieben. Ich werde.
Es ist ein Tool, das es schon lange gibt, und der Inhalt wird jetzt erneuert: "Ist es heutzutage Maven?", Aber wenn es als Referenz verwendet werden kann.
Bereiten Sie Folgendes im Voraus vor.
Es ist schlampig, besteht aber nur aus der Konfigurationsdatei pom.xml und Jetty. Grundsätzlich wird das Argument zur Ausführung des Befehls mvn (Option -D) verwendet, um alles zu tun.
Derzeit funktioniert die Beispiel-App, die gerade die Datenquelle ** org.codehaus.cargo: datasource-war ** öffnet, mit dem folgenden Befehl.
git clone https://github.com/Piecemeal-Technology-Inc/cargo-jetty-launcher.git
cd cargo-jetty-launcher
mvn initialize compile cargo:run
Wenn Sie mit Ihrem Browser auf http: // localhost: 8081 / change-context-root / test zugreifen, wird "Verbindung hergestellt!" Angezeigt. Das Kontextstammverzeichnis wird durch context.path in pom.xml gesteuert.
Starten Sie VSCode und generieren Sie Java launch.json mit "Ausführen" - "Konfiguration hinzufügen". Fügen Sie daher die folgende Konfiguration zu den Konfigurationen hinzu.
launch.json
{
"type": "java",
"name": "Debug (Remote 9990)",
"request": "attach" , //Remote-Debug-Spezifikation
"projectName" : "cargo-jetty-launcher",
"hostName": "localhost",
"port": 9990, // pom.XML-Debug.Übereinstimmung mit der Port-Eigenschaft
//Fügen Sie der unter Ziel erstellten Quelle einen Referenzpfad hinzu
"sourcePaths": [
"${workspaceFolder}/target/sources-datasource-war.1.7.11/main",
"${workspaceFolder}/target/sources-datasource-war.1.7.11/dependency"
]
}
Nachdem die Vorbereitung abgeschlossen ist, können Sie Schritte ausführen, indem Sie einen Haltepunkt festlegen und den Debugger starten.
※Hinweis ** Dies ist das Ergebnis von Versuch und Irrtum, daher denke ich nicht, dass es im Grunde die theoretische Straße ist. ** ** ** Wenn Sie eine eingebettete Datenquelle verwenden oder Jettys eigene Erweiterung nicht enthalten, ist es in Ordnung, wenn Sie dies normal wie offiziell tun.
Da es bis zu einem gewissen Grad mit Laufzeitargumenten verallgemeinert ist, kann es leicht ausgelöst werden, indem für jede Anwendung, die Sie auslösen möchten, ein Befehl vorbereitet wird. Da es keine Substanz wie den Quellcode enthält, kann die Ausführungsumgebung in PJ in einer einfachen Form erweitert werden.
Ich dachte, ich würde diese Geschichte schreiben, weil ich mich wirklich für Cargo interessiere, aber ich glaube nicht, dass es eine Nachfrage gibt, also werde ich sie vorerst weglassen.
Erstens müssen sich der auszuführende War- und Source-JAR im lokalen Repository oder Remote-Repository befinden. Wenn Sie nicht debuggen, brauchen Sie kein Quellglas, nur Krieg.
Recommended Posts