2017-01-11 3 views
1

Ich möchte einige Tools in meinem Maven-Projekt haben, die ich aus meiner IDE (IntelliJ in meinem Fall) ausführen kann, die aber nicht mit der Anwendung verpackt sind. Ziemlich genau Java-Klassen mit einer Hauptmethode, ähnlich der "Test" -Quellwurzel, aber nicht zum Testen gedacht.Maven Development Tools/Befehlszeile

Gibt es eine gute leichte Methode/Best Practice, um dies zu erreichen?

Ein Beispiel für eine solche Aufgabe wäre, einige Testdatenbanken zurückzusetzen, bestimmte Dateien basierend auf Systemen von Drittanbietern neu zu generieren, also eher wie Skriptaufgaben, die Zugriff auf das Klassenpfad-/Datenmodell des Moduls haben.

Vielen Dank im Voraus!

+0

Was ist der Zweck solcher Klassen? – khmarbaise

+0

Kann im Grunde alles sein - was ich gerade für diese benutze ist z. Erzeugen einiger Zertifikate/Dateien zum Testen, Überprüfen oder Ändern einiger Datenbanken während der Entwicklung usw. – frow

+0

@frow - Hilft meine Antwort? – leeyuiwah

Antwort

0

Für diese internen Dienstprogramme, die ich nicht verteilen möchte, lege ich sie unter test (ein Ordner parallel zu src) mit einer eigenen Klassenhierarchie, die parallel zu der unter src. Und dann in meinem pom.xml, ich nenne einfach src als sourceDirectory. Würde das für Ihren Fall funktionieren?

<build> 
    <sourceDirectory>src</sourceDirectory> 

    <resources> 
     <resource> 
      <directory>src</directory> 
      <includes> 
       <include>*.xml</include> 
       <include>*.properties</include> 
      </includes> 
     </resource> 
    </resources> 
    ... 
</build> 

P.S. Mein Artefakt ist eine war Datei. Und ich benutze Eclipse nicht Intellj-idea aber für diese Frage ist es egal.