Як розширити складну мережу пакетів в Intellij IDEA?


127

Intellij IDEA автоматично з'єднує пакети разом, якщо в іншому випадку проміжні порожні. Це взагалі приємна особливість. Однак іноді не хочеться, щоб вони були приковані, особливо коли ви в середині створення нових пакетів для вашого нового проекту. Можливо, я натрапив на налаштування відключення цієї функції для певного пакету, але зараз я не можу знайти його. Отже, хтось знає, як контролювати цю функцію? Велике спасибі.

До речі, якщо вам потрібні роз'яснення, я маю на увазі під ланцюжком пакетів наступне. Припустимо, у вас є така структура пакунків:

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

Оскільки всередині проміжних папок насправді немає нічого іншого, Intellij IDEA автоматично відобразить його так, як

com.company.project.some.feature

у досліднику проекту, який виглядає так, що пакети прикуті разом.


9
Відповідь нижче має реальну відповідь, але я подумав, що я заздалегідь прислухаюся до однієї речі, яку нещодавно дізнався. Якщо у вас згорнуті структури пакетів, якщо ви додасте новий пакет, що має той самий простір імен кореня, то Intellij буде досить розумним, щоб розширити речі. тобто якщо у мене є, com.foo.devshorts.modelа потім я додаю, com.foo.devshorts.controllersце розгорнеться com.foo.devshorts.
девшорти

3
@devshorts Це насправді одна важлива причина, чому я запитав. У вашому прикладі, якщо я хочу створити controllersпісля створення com.foo.devshorts.model, я повинен буду приставка controllerз com.foo.devshorts, що дратує.
JBT

Так, я почуваюсь так само. Хоча я змусився просто робити це так, як я запропонував, оскільки я частіше віддаю перевагу ущільненим пакетам.
девшорти

6
JBT & @devshorts Найпростіший спосіб - якщо ви хочете зберегти вигляд компактних пакетів - це використовувати панель навігації (Alt + Home). Відкрийте його, стрілку вгору (і вниз) на бажаний батьківський пакет, а потім створіть новий підпакет (або префікс-клас). Ще одне вирішення псевдо, оскільки видалити простіше, ніж набрати, - помістити курсор на довгий пакет (com.foo.devshorts.model у вашому прикладі) у поданні проекту та зробити "Копіювати посилання" (Ctrl + Alt + Shift + C, меню Редагувати> Копіювати довідку або контекстне меню правою кнопкою миші. Потім, коли ви створюєте свій пакет, вставте пакет, який ви скопіювали, та видаліть у міру необхідності.
Джавару

Відповіді:


238

Зніміть прапорець "Сховати порожні середні пакети" у спадному меню Налаштування перегляду проекту:

Сховати порожні середні пакети


11
Як оновлення, ця опція, схоже, тепер названа Сховати порожні середні пакети
Стефан

4
У версії IntelliJ Ultimate 14.1.4. це все ще "Компактне ..." у випадаючому меню інструментів (натискаючи на маленьку шестірну стрілку вниз на панелі меню дослідників проекту)
Pytry

ок, просто слідкуйте за прочитаними номерами на скріншоті, щоб досягти опції
steveen zoleko

2
Я думаю, що слід додати, що, щоб потрапити до цього меню, ви клацніть правою кнопкою миші на верхній панелі "Проект" (лівий верхній частині екрана).
Carcigenicate

6
Compact Middle Packagesу Idea Ultimate 2018.02
J-Alex

17

Як ще одне рішення, як створити інший файл у проміжному пакеті:

Використовуйте розширену ієрархію пакетів у верхній частині вікна, як показано нижче Як показано нижче

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.