2011-01-04 25 views
3

Ich versuche, mein Projekt und erzeugen ein Urbild von ihm zu greifen über:Maven Archetyp vom Projekt - wie man Paketnamen erhält?

archetype:create-from-project 

Die Sache ist, dass mein Projekt src/main/java Paketstruktur com.sample.app hat, aber das Urbild muss habe es so, wie der Benutzer es will, wenn er das Projekt vom Archetyp erzeugt, aber das ist unmöglich, nehme ich an. Es scheint nicht zu greifen groupId und artifactId und archetype-resources/src/main/java basierend auf dieser Eingabe zu generieren.

Wie auch immer, das ist, warum dieses Argument gibt es nehme ich an: package

mvn archetype:create-from-project -DpackageName=com.sample.app 

Aber es nicht funktioniert und es gibt noch archetype-resources/src/main/java/org/sample/app ..

Antwort

4

Das create-from-project Ziel in der Regel erkennt automatisch die Basispaketnamen und ersetzte sie, so würden Sie mit \templateproject\target\generated-sources\archetype\src\main\resources\archetype-resources\src\test\java\Foo.java mit einem Paket Erklärung ${package}

Versuchen Sie, das Urbild Plugin am Ende und create-from-project mit einem fast leeren Hallo-Welt-Projekt und Sie werden sehen, dass der generierte Archetyp das Paket entfernt hat. Auf diese Weise kann der Benutzer, der archetype:generate verwendet, seinen Paketnamen zur Generierungszeit angeben.

+1

, was mit der ersten Version von Archetype-Plugin ich verwendet, es extrahierte die Paketstruktur, ich sagte mir selbst, cool jetzt, wenn ich es als ein Benutzer und Eingabe groupId und artifactId generieren wird es die Basis-Paket-Struktur generieren. ..aber nichts ist passiert ... dann habe ich das frischeste Plugin benutzt und es hat nicht einmal die Basis-Paketstruktur entfernt, als ich Archetype vom Projekt erstellt habe ... Es ist in Entwicklung, dies ist im Quellcode des Mojo: privat String packageName; // Finde einen besseren Weg, das Paket zu lösen !!! erzwinge die Verwendung des Konfigurators – lisak

+0

ach so kommt es auf die Maven Plugin Version an. welchen verwendest du? – mhaller

+0

Erstens, der Standard, der serviert wird, wenn Sie keine Version angeben, dann 2.0-Alpha-6-SNAPSHOT ... Schließlich habe ich es mit 2.0-Alpha-4 arbeiten ... aber der traurige Punkt ist, dass Ich weiß nicht, was der Grund war :-) Aber vielen Dank mhaller, Sie zeigten mir die richtige Richtung – lisak

Verwandte Themen