Ich habe die folgende Verzeichnisstruktur
--my-app
|
|--main-app
|
|--plugins
|
|--plugin1
|
|--plugin2
In grails-app/conf/BuildConfig habe ich die notwendige Konfiguration hinzugefügt, um sicherzustellen, dass die Plugins aus dem plugins
Verzeichnis geladen werden, sodass beim Ausführen der Anwendung die neuesten Änderungen übernommen werden.
Ich versuche dies als einzelnes Projekt in IntelliJ einzurichten, das 3 Module hat, eins für die Hauptanwendung und eins für jeden der beiden Plugins. Ich habe Folgendes versucht:
-
Generiere die IntelliJ-Projektdateien
cd my-app/main-app
grails integrate-with --intellij
-
Öffne die generierte .ipr-Datei von innerhalb von IntelliJ (Datei | Projekt öffnen...). Dadurch werden die Hauptanwendung und die Plugins als Grails-Module hinzugefügt
Jedoch meldet IntelliJ jedes Mal, wenn ich eine Klasse aus einem Plugin öffne, dass die Klasse zwei Vorkommen hat. Es scheint, dass jede Plugin-Klasse erkannt wird
- einmal im IntelliJ-Modul für das Plugin selbst
- einmal im Modul, den IntelliJ automatisch erstellt, der alle Plugins enthält. In meinem Fall ist dieses Modul namens
main-app-grailsPlugins
In der Projektstrukturansicht habe ich versucht, die Inhalts-Pfade für plugin1
und plugins2
aus main-app-grailsPlugins
zu entfernen, aber sie werden automatisch wieder hinzugefügt.
Gibt es eine Möglichkeit, dies zu verhindern, oder eine andere Möglichkeit, ein IntelliJ-Projekt für eine Grails-App mit In-Place-Plugins richtig einzurichten? Ich verwende Grails 1.3.7 und IntelliJ 10.5.4