codecamp

IntelliJ IDEA创建导入

引用尚未导入的类时,IntelliJ IDEA 可帮助您找到该文件并将其添加到导入列表中。根据您的设置,您可以导入单个类或整个包。

tip:要配置自动导入的工作方式,请打开 IntelliJ IDEA 设置,然后转到“自动导入”页面。

导入语句将被添加到“导入”部分,但光标不会从当前位置移动,并且您当前的编辑会话不会挂起。这个功能被称为“导入助手”。

同样的可能性适用于 XML,JSP 和 JSPX 文件。当您键入具有未绑定命名空间的标签时,“导入助手”建议创建一个命名空间,并提供适当的选项列表。

当您引用在当前文件外部定义的 PHP 类时,IntelliJ IDEA 可以定义类定义,您可以执行以下操作之一:

  • IntelliJ IDEA 自动完成完全限定的类名,包括定义类的命名空间。这将导致乱码。
  • 让 IntelliJ IDEA 自动完成短类名称并导入类在中定义的命名空间。
  • 使用快速修复程序手动导入命名空间。

在 PHP 上下文中,通过插入 use 语句导入命名空间。

IntelliJ IDEA 即时导入包

IntelliJ IDEA 要即时导入包,请按照下列步骤操作:

  1. 开始在编辑器中输入名称。如果名称引用了尚未导入的类,则会显示以下提示:
    IntelliJ IDEA即时导入包 
    如果弹出的窗口使您烦恼,请更改当前文件的此行为。只需点击状态栏上的 图标,并清除 "复选框导入" 弹出窗口:
    IntelliJ IDEA即时导入包 
    未解析的参考文献将被强调,您将必须显式调用 "意图操作" 添加导入。
  2. 按 Alt+Enter 键。如果有多个选项,请从列表中选择所需的导入。
    IntelliJ IDEA即时导入包

IntelliJ IDEA 提供了一个快速修复程序,可自动安装您要导入的软件包:如果在 import 关键字之后键入当前计算机上当前不可用的软件包的名称,则快速修复建议忽略未解析的引用,或下载并安装缺少的包:

IntelliJ IDEA即时导入包

如果选中了 "即时添加明确导入" (Add unambiguous imports on the fly)选项,IntelliJ IDEA 不会通知您所需的导入 (如果只有一个选择),并自动添加唯一可能的导入。

完成一个简短的类名,并即时导入一个 PHP 命名空间

要编译一个简短的类名并导入一个 PHP 命名空间,请按照下列步骤操作:

  1. 为了启用即时命名空间导入,请打开 IntelliJ IDEA 设置,然后单击 "编辑器" 节点下的 "自动导入"。在“编辑器”中:打开“自动导入”页面,在 "PHP" 部分中配置自动命名空间导入。要使 IntelliJ IDEA 自动导入 PHP 命名空间,请添加 use 语句,并在您在属于某个命名空间的类或文件中键入时完成短类名称,请选中 "在命名空间范围内启用自动" 复选框。默认情况下,此复选框处于选中状态。要在输入不属于任何特定命名空间的文件时,应用自动命名空间导入,请选中 "在文件范围内启用自动" 复选框。
  2. 打开所需的文件进行编辑,并开始输入类的简称。
  3. 从建议的完成变体中,选择相关的类名称:
    IntelliJ IDEA 即时导入一个 PHP 命名空间
    IntelliJ IDEA 完成短类名称,并在定义了所选类的命名空间中插入一个 use 语句: 
    IntelliJ IDEA 即时导入一个 PHP 命名空间

IntelliJ IDEA 使用快速修复程序导入PHP命名空间

要使用快速修复程序导入 PHP 类,请按照下列步骤操作:

  1. 打开所需的文件进行编辑并引用 PHP 类。如果引用的类未绑定,则会显示以下提示:
    IntelliJ IDEA 使用快速修复程序导入PHP命名空间
  2. 按 Alt+Enter。IntelliJ IDEA 建议导入它检测到类的声明的命名空间:
    IntelliJ IDEA 使用快速修复程序导入PHP命名空间
  3. 按 Enter。IntelliJ IDEA 插入一个命名空间声明语句(use 语句):
    IntelliJ IDEA 使用快速修复程序导入PHP命名空间

IntelliJ IDEA 导入 TypeScript 符号

在 TypeScript 上下文中,IntelliJ IDEA 可以 import为可以为模块、类和任何其他可以导出并作为类型调用的符号生成导入语句。在编辑器中打开所需的文件,然后执行以下操作之一:

  • 开始输入符号的短名称。从建议用于的完成变体中,选择相关的符号名称:
    IntelliJ IDEA 导入 TypeScript 符号
  • 将光标定位在未解析的符号 (以红色显示) 中,然后按 Alt+Enter:
    IntelliJ IDEA 导入 TypeScript 符号 
    在上下文菜单上,选择“添加导入语句”并按 Enter。
  • 每当将鼠标指针悬停在需要导入的未解析引用上时,请配置 IntelliJ IDEA 以显示弹出窗口:通过按 Ctrl+Alt+S 或选择文件| 设置(Windows 和 Linux 系统中)或 IntelliJ IDEA | 首选项(macOS 系统中)打开“设置/首选项”对话框。展开编辑器节点,然后单击 "常规" 下的 "自动导入"。在打开的 "自动导入" 页上,选中TypeScript 区域中的 "显示导入弹出式" 复选框。每当您将鼠标指针悬停在未解析的符号上时,IntelliJ IDEA 将显示以下弹出消息:
    IntelliJ IDEA 导入 TypeScript 符号
    按下 Alt+Enter 可以自动生成并插入导入语句。

在任一种情况下,IntelliJ IDEA 都会插入一条 导入(import)语句:

IntelliJ IDEA 导入 TypeScript 符号

您可以在代码样式上为生成的导入语句配置引号样式:在 TypeScript 页面,标点符号选项卡(文件| 设置| 编辑| 代码风格| TypeScript | 标点符号 (File | Settings | Editor | Code style | TypeScript | Punctuation)(在 Windows 和 Linux 系统中)或者 IntelliJ IDEA | 首选项| 编辑| 代码风格| TypeScript | 标点符号 )。(IntelliJ IDEA | Preferences | Editor | Code style | TypeScript | Punctuation)(在 macOS 中)

IntelliJ IDEA 导入 XML 命名空间

如果要导入 XML 命名空间,请按照下列步骤操作:

  1. 打开所需的文件进行编辑,然后开始输入标签。如果未绑定命名空间,则会显示以下提示:
    IntelliJ IDEA 导入 XML 命名空间
  2. 按 Alt+Enter。如果有多个选项,请从列表中选择所需的命名空间。
    IntelliJ IDEA 导入 XML 命名空间 
    根据文件类型的不同,IntelliJ IDEA 创建命名空间声明或 taglib:
    IntelliJ IDEA 导入 XML 命名空间
IntelliJ IDEA如何自动完成代码
IntelliJ IDEA从自动导入中排除类并优化导入
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }