Wie kann ich die gefaltete Paketkette in Intellij IDEA erweitern?

127

Intellij IDEA verkettet Pakete automatisch miteinander, wenn die Zwischenpakete ansonsten leer sind. Es ist im Allgemeinen eine nette Funktion. Manchmal möchten Sie jedoch nicht, dass sie verkettet werden, insbesondere wenn Sie gerade dabei sind, neue Paketstrukturen für Ihr neues Projekt zu erstellen. Ich bin möglicherweise auf die Einstellung zum Deaktivieren dieser Funktion für ein bestimmtes Paket gestoßen, kann sie aber jetzt nicht finden. Weiß jemand, wie man diese Funktion steuert? Vielen Dank.

Übrigens, falls Sie eine Klärung benötigen, meine ich mit Paketverkettung Folgendes. Angenommen, Sie haben diese Paketstruktur:

$ tree com
com
└── company
    └── project
        └── some
            └── feature

Da sich in den Zwischenordnern wirklich nichts anderes befindet, zeigt Intellij IDEA es automatisch so an

com.company.project.some.feature

im Projektexplorer, der aussieht, als wären die Pakete miteinander verkettet.

JBT
quelle
9
Die Antwort unten hat die richtige Antwort, aber ich dachte, ich würde mich auf eine Sache einlassen, die ich kürzlich gelernt habe. Wenn Sie Paketstrukturen reduziert haben und ein neues Paket mit demselben Root-Namespace hinzufügen, ist Intellij intelligent genug, um die Dinge zu erweitern. dh wenn ich habe com.foo.devshorts.modelund dann füge com.foo.devshorts.controllersich hinzu, wird es erweitert com.foo.devshorts.
Devshorts
3
@devshorts Das ist eigentlich ein wichtiger Grund, warum ich gefragt habe. In Ihrem Beispiel, wenn ich erstellen möchten controllersnach dem Erstellen com.foo.devshorts.model, werde ich Präfix controllermit com.foo.devshorts, was ärgerlich ist.
JBT
Ja, mir geht es genauso. Obwohl ich es einfach so machen muss, wie ich es vorgeschlagen habe, da ich komprimierte Pakete meistens bevorzuge.
Devshorts
6
JBT & @devshorts Eine einfachere Möglichkeit - wenn Sie die kompakte Paketansicht beibehalten möchten - ist die Verwendung der Navigationsleiste (Alt + Home). Öffnen Sie es, pfeilen Sie über (und nach unten) zum gewünschten übergeordneten Paket und erstellen Sie dann ein neues Unterpaket (oder eine Klasse mit Präfix). Eine andere Pseudo-Problemumgehung, da das Löschen einfacher ist als das Eingeben, besteht darin, den Cursor in der Projektansicht auf das lange Paket (in Ihrem Beispiel com.foo.devshorts.model) zu setzen und eine "Kopierreferenz" (Strg + Alt + Umschalt +) auszuführen C, Menü Bearbeiten> Referenz kopieren oder im Kontextmenü mit der rechten Maustaste klicken). Fügen Sie dann beim Erstellen Ihres Pakets das kopierte Paket ein und löschen Sie es nach Bedarf.
Javaru

Antworten:

238

Deaktivieren Sie "Leere mittlere Pakete ausblenden" in der Dropdown-Liste "Projektansicht":

Leere mittlere Pakete ausblenden

Daniel Kaplan
quelle
11
Als Update scheint diese Option jetzt Hide Empty Middle Packages
Stephane
4
In IntelliJ Ultimate Version 14.1.4. Es ist immer noch "Kompakt ..." im Dropdown-Tool-Menü (Klicken Sie auf den kleinen Zahnrad-
Abwärtspfeil
ok, folge einfach den gelesenen Zahlen auf dem Screenshot, um die Option zu erreichen
steveen zoleko
2
Ich denke, es sollte hinzugefügt werden, dass Sie mit der rechten Maustaste in die obere Leiste "Projekt" klicken (oben links im Screenshot), um zu diesem Menü zu gelangen.
Carcigenicate
6
Compact Middle Packagesin Idea Ultimate 2018.02
J-Alex
16

Als weitere Lösung zum Erstellen einer weiteren Datei im Zwischenpaket:

Verwenden Sie die erweiterte Hierarchie der Pakete oben im Fenster, wie unten gezeigt Wie nachfolgend dargestellt

Khojiakbar
quelle