【发布时间】:2014-02-24 23:12:06
【问题描述】:
如果中间包为空,Intellij IDEA 会自动将包链接在一起。总的来说,这是一个不错的功能。但是,有时您不希望它们被链接起来,尤其是当您正在为新项目创建新的包结构时。我可能遇到了为某个包禁用此功能的设置,但我现在在哪里找不到它。那么,有谁知道如何控制这个功能?非常感谢。
顺便说一句,如果您需要澄清,我所说的包链接的意思如下。假设你有这个包结构:
$ tree com
com
└── company
└── project
└── some
└── feature
由于中间文件夹内真的没有其他东西,Intellij IDEA 会自动显示为
com.company.project.some.feature
在项目资源管理器中,看起来包被链接在一起。
【问题讨论】:
-
下面的答案是真正的答案,但我想我会附和我最近学到的一件事。如果您已经折叠了包结构,如果您添加了一个具有相同根名称空间的新包,那么 intellij 将足够聪明地扩展内容。即如果我有
com.foo.devshorts.model,然后我添加com.foo.devshorts.controllers,它将扩展com.foo.devshorts。 -
@devshorts 这实际上是我问的一个重要原因。在您的示例中,如果我想在创建
com.foo.devshorts.model之后创建controllers,则必须在controller前面加上com.foo.devshorts,这很烦人。 -
是的,我也有同感。虽然我已经按照我建议的方式去做了,因为我更喜欢压缩包。
-
JBT & @devshorts 一个更简单的方法——如果你想保持紧凑的包视图——是使用导航栏(Alt+Home)。打开它,箭头(和向下)到所需的父包,然后创建一个新的子包(或前缀类)。另一个伪解决方法,因为删除比键入更容易,是将光标放在项目视图中的长包(示例中为 com.foo.devshorts.model)上并执行“复制参考”(Ctrl+Alt+Shift+ C,菜单编辑>复制参考,或右键单击上下文菜单)。然后当你创建你的包时,粘贴你复制的包并根据需要删除。
标签: java intellij-idea