Gewusst wie: umbenennen maven pom artifactId mit IntelliJ refactoring?
Ich bin mit IntelliJ 13 und habe ein Java-Projekt-setup mit seinen Modulen basierend auf maven Projekte.
Gibt es ein maven Projekt, dass muss ich umbenennen, so werde ich haben, um es zu ändern ist artifactId Eigenschaft-Wert in der pom-Datei.
Wenn ich dies manuell tun, ich werde Sie dann finden müssen, um alle seine vorkommen und ändern Sie diese manuell als auch (ex: wo es im Lieferumfang enthalten ist ein Modul und wo es verwendet wird, als eine Abhängigkeit).
Seit IntelliJ bietet viele refactoring-Techniken, ich dachte, umgestalten->umbenennen auf der pom artifactId Eigenschaft unterstützt werden würde, jedoch scheint es nicht zu sein.
Ich könnte versuchen und machen Sie einen suchen/ersetzen .. aber das macht immer noch mir tun all die Arbeit, die Logik (fehleranfällig).
IMO, IntelliJ sollte in der Lage sein zu erkennen, wo die pom im Lieferumfang enthalten ist ein Modul und die anderen Module verwenden Sie es als eine Abhängigkeit - wer weiß, der eine automatische Möglichkeit, dies zu tun - oder bin ich etwas fehlt hier?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Replace in Path
(Strg+Umschalt+f standardmäßig) Aktion mit text zu finden<artifactId>OLD-ARTIFACT-ID</artifactId>
und text zu ersetzen<artifactId>NEW-ARTIFACT-ID</artifactId>
wird die meisten der Arbeit wird automatisch mit dem minimum an false-positives, vor allem wenn man zusätzlich konfigurieren, um die richtige Datei name filter (pom.xml
natürlich).Im detail, hier ist die vollständige Sequenz der Schritte zum umbenennen der maven-Modul (unter der Annahme, dass der name des Moduls entspricht dem Namen des Verzeichnisses, in dem das Modul liegt):
<module>OLD-ARTIFACT-ID</module>
Linien in Eltern - /aggregator-poms, ermöglichen dann die IDEE zu re-importieren Sie das Projekt und lassen Sie es zu entfernen, ausgeschlossen von Modulen aus dem Projekt. Es ist besser zu entfernen, übrig gebliebene .iml-Dateien zu.<artifactId>OLD-ARTIFACT-ID</artifactId>
zu<artifactId>NEW-ARTIFACT-ID</artifactId>
zu benennen Sie das Modul in Frage, und alle zu beheben, Abhängigkeit Referenzen.<module>OLD-ARTIFACT-ID</module>
zu<module>NEW-ARTIFACT-ID</module>
alle zu beheben, aggregation Referenzen.<module>NEW-ARTIFACT-ID</module>
Linien in Eltern - /aggregator-POM-Dateien, ermöglichen dann die IDEE zu re-importieren Sie das Projekt.Wenn Sie Lust haben, die IDEE findet einige nützliche Funktionen, die Sie sollten erstellen Sie eine feature-Anfrage an http://youtrack.jetbrains.com/. In diesem speziellen Fall Stimme für IDEE-94223, IDEE-72181 und IDEE-104344.
<module>OLD-ARTIFACTID</module>
gegeben, dass mein Projekt folgt best practices aaannd dann werde ich endlich umbenennen müssen das Verzeichnis NEU-ARTIFACTID.. ich denke, es lohnt sich, ein feature-request!