IntelliJ IDEA粘贴Kotlin静态导入代码行为疑问及修改咨询
关于IntelliJ IDEA 2018.1.1 Kotlin静态导入粘贴行为的说明
嘿,这个情况不是Bug,而是IntelliJ IDEA当时版本默认的代码导入优化特性~
早期的IntelliJ对Kotlin的静态导入处理比较保守,在粘贴代码时,IDE会自动调整引用方式,优先使用类限定名(比如SpringBootTest.WebEnvironment.RANDOM_PORT)而非通配符静态导入,同时只导入最外层的类(也就是import org.springframework.boot.test.context.SpringBootTest),这是默认代码风格设置导致的。
当然,这个行为是可以修改的,跟着下面的步骤调整设置就行:
- 打开IDE设置:Windows/Linux按
Ctrl+Alt+S,Mac按Cmd+, - 找到
Editor > Code Style > Kotlin,切换到Imports标签页 - 在Static imports区域:
- 你可以调整
Names count to use import with '*'的阈值,比如把数值设为1,这样只要引用了一个静态成员,就会自动用通配符导入(import org.springframework.boot.test.context.SpringBootTest.WebEnvironment.*) - 确保
Add unambiguous imports on the fly是勾选状态,这是IDE自动处理导入的前提
- 你可以调整
- 确认设置后点击
Apply→OK,之后再粘贴类似代码,IDE就会按照你想要的方式添加静态导入了
要是偶尔粘贴后没自动生效,也可以手动触发:选中RANDOM_PORT,按Alt+Enter(Windows/Linux)或Option+Enter(Mac),然后选择导入所有静态成员的选项就行。
内容的提问来源于stack exchange,提问作者Ondřej Míchal
相关产品推荐
相关产品推荐

