Comment étendre la chaîne de colis pliée dans Intellij IDEA?

127

Intellij IDEA enchaîne automatiquement les packages si les intermédiaires sont par ailleurs vides. C'est une fonctionnalité intéressante en général. Cependant, parfois, vous ne voulez pas qu'ils soient chaînés, en particulier lorsque vous êtes en train de créer de nouvelles structures de package pour votre nouveau projet. Je suis peut-être tombé sur le paramètre de désactivation de cette fonctionnalité pour un certain package, mais je ne peux pas le trouver où maintenant. Alors, est-ce que quelqu'un sait comment contrôler cette fonctionnalité? Merci beaucoup.

BTW, au cas où vous auriez besoin de clarification, ce que j'entends par chaînage de paquets est le suivant. Supposons que vous ayez cette structure de package:

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

Puisqu'il n'y a vraiment rien d'autre dans les dossiers intermédiaires, Intellij IDEA l'affichera automatiquement comme

com.company.project.some.feature

dans l'explorateur de projet, qui ressemble à des packages enchaînés.

JBT
la source
9
La réponse ci-dessous a la vraie réponse, mais je pensais que j'allais ajouter une chose que j'ai récemment apprise. Si vous avez réduit les structures de package, si vous ajoutez un nouveau package qui a le même espace de noms racine, alors intellij sera suffisamment intelligent pour développer les choses. c'est-à-dire si j'ai com.foo.devshorts.modelet puis j'ajoute com.foo.devshorts.controllersça va s'étendre com.foo.devshorts.
devshorts
3
@devshorts C'est en fait une raison importante pour laquelle j'ai demandé. Dans votre exemple, si je veux créer controllersaprès la création com.foo.devshorts.model, je vais devoir préfixer controlleravec com.foo.devshorts, ce qui est ennuyeux.
JBT
Ouais, je ressens la même chose. Bien que j'aie pu le faire comme je l'avais suggéré, car je préfère le plus souvent les paquets compactés.
devshorts
6
JBT & @devshorts Un moyen plus simple - si vous souhaitez conserver la vue des packages compacts - est d'utiliser la barre de navigation (Alt + Accueil). Ouvrez-le, faites une flèche vers le haut (et vers le bas) jusqu'au package parent souhaité, puis créez un nouveau sous-package (ou une classe préfixée). Une autre pseudo solution de contournement, car la suppression est plus facile que la saisie, consiste à placer votre curseur sur le package long (com.foo.devshorts.model dans votre exemple) dans la vue du projet et à faire une "Copier la référence" (Ctrl + Alt + Maj + C, menu Edition> Copier la référence ou dans le menu contextuel du clic droit). Ensuite, lorsque vous créez votre package, collez le package que vous avez copié et supprimez-le si nécessaire.
Javaru

Réponses:

238

Décochez "Masquer les packages intermédiaires vides" dans la liste déroulante des paramètres de la vue du projet:

Masquer les packages intermédiaires vides

Daniel Kaplan
la source
11
En tant que mise à jour, cette option semble maintenant s'appeler Hide Empty Middle Packages
Stephane
4
Dans IntelliJ Ultimate version 14.1.4. il est toujours "Compact ..." dans le menu déroulant des outils (en cliquant sur la petite flèche vers le bas des roues
dentées
ok il suffit de suivre les nombres lus sur la capture d'écran pour atteindre l'option
steveen zoleko
2
Je pense qu'il faut ajouter que pour accéder à ce menu, vous faites un clic droit dans la barre supérieure "Projet" (en haut à gauche dans la capture d'écran).
Carcigenicate
6
Compact Middle Packagesdans Idea Ultimate 2018.02
J-Alex
17

Comme autre solution pour créer un autre fichier dans le package intermédiaire:

Utilisez la hiérarchie étendue des packages en haut de la fenêtre comme indiqué ci-dessous Comme indiqué ci-dessous

Khojiakbar
la source