IntelliJ IDEA 2020.1 Help

Auto Import

XML

Show import popup

Automatically display an import popup when typing the name of an unbound namespace.

Java

Insert imports on paste

Select how IntelliJ IDEA should process references to missing classes, static methods, or fields in pasted blocks of code:

All — import statements will be added automatically for all missing classes, methods and fields found in pasted blocks of code.

Ask — you will be prompted to select which classes, methods and fields you want to import.

None — no import statements will be added, you won't be asked about unresolved references.

Show import popup for

Select whether you want the IDE to show popups for classes and/or for static methods and fields. By default, both options are selected.

Optimize imports on the fly

If this option is on, IntelliJ IDEA removes unused imports, adds missing imports, and organizes import statements silently as you work in the editor.

Add unambiguous imports on the fly

This option enables automatic insertion of import statements if there's only one source of import.

Exclude from import and completion

Specify packages and classes that you want to exclude from the list of import and completion suggestions (the * (asterisk) wildcard is allowed). You can exclude items on the project or the IDE level.

TypeScript/JavaScript

Add ES6 imports on code completion

  • If this checkbox is selected, IntelliJ IDEA automatically inserts an import statement in JavaScript code when you complete a symbol exported using ES6 exports in another project file:

  • When the checkbox is cleared, on pressing Alt+Enter IntelliJ IDEA shows a popup that suggests to import the symbol:

    Add ES6 imports on code completion disabled
  • Completion and auto-import also work for React components, including stateless components. IntelliJ IDEA properly detects them, provides code completion, and adds import statements automatically:

Add TypeScript imports automatically

Select this checkbox if you want IntelliJ IDEA to generate import statements in TypeScript code. Use the checkboxes below to choose when import generation will be invoked.

  • On code completion: If this checkbox is selected, IntelliJ IDEA automatically inserts an import statement in TypeScript code when you complete a symbol exported in another project file.

  • With import popup: If this checkbox is selected, IntelliJ IDEA shows a tooltip with an import suggestion when you position the caret at an unresolved symbol that can be imported. When the checkbox is cleared, you can invoke import generation only be pressing Alt+Enter.

  • Unambiguous imports on the fly: With this checkbox selected, IntelliJ IDEA adds import statements when you type your code or paste a fragment with a symbol that is not yet imported if there is only one source to import the symbol from.

When you are using ES6 modules in a browser that requires full file names, for example, in Chrome, it is important that the names of ES6 modules in import statements have the .js extensions.

  • To add the extension automatically in the JavaScript context, select the Use file extension in module name checkbox on the Imports tab of the Code Style: JavaScript page.

  • To add the extension automatically in the TypeScript context, select the Use .js file extension in module name checkbox on the Imports tab of the Code Style: TypeScript page.

JSP

Add unambiguous imports on the fly

Select this checkbox to have IntelliJ IDEA automatically add imports that can be added without user intervention.

Scala

Insert imports on paste

Select how IntelliJ IDEA should process references to missing classes in pasted blocks of code:

All — import statements will be added automatically for all missing classes, methods and fields found in pasted blocks of code.

Ask — you will be prompted to select which classes, methods and fields you want to import.

None — no import statements will be added, you won't be asked about unresolved references.

To disable import popup, use Java settings

Refer to the same options in the settings for Java.

Add unambiguous imports on the fly

This option enables automatic insertion of import statements if there's only one source of import.

Optimize imports on the fly

If this option is on, IntelliJ IDEA removes unused imports, adds missing imports, and organizes import statements silently as you work in the editor.

PHP

Insert imports on paste

Select how IntelliJ IDEA should process references to missing classes and methods in pasted blocks of code:

  • All: import statements will be added automatically for all missing classes and methods found in pasted blocks of code.

  • Ask: IntelliJ IDEA will prompt you to select which classes and methods you want to import.

    If the pasted class is already referenced in the target code via an alias, IntelliJ IDEA will prompt you to reuse this alias instead of creating a new import statement.

    the Select Classes To Import dialog: reuse existing alias
  • None: no import statements will be added, you won't be asked about unresolved references.

Note that adding imports on paste is only possible if the copied element is properly resolved in code (that is, not highlighted by the Undefined class or Undefined method inspections), and project indexing is finished.

Enable auto-import in file scope

Select this checkbox to have IntelliJ IDEA automatically import PHP namespaces, add use statements, and complete short class names on the fly, when you are typing in a class or file that does not belong to any specific namespace. By default, the checkbox is cleared.

Enable auto-import in namespace scope

Select this checkbox to have IntelliJ IDEA automatically import PHP namespaces, add use statements, and complete short class names on the fly when you are typing in a class or file that belongs to a certain namespace. The checkbox is selected by default.

Treat symbols from the global space

In this area, configure auto-import from the global namespace separately for classes, functions, and constants.

  • Prefer FQN: If selected, IntelliJ IDEA automatically inserts the fully-qualified name of a symbol from the global namespace, prepended with a backslash, for example:

    namespace A; $myException = new \Exception(); $a = \strlen("Test"); echo \PHP_EOL;
  • Prefer Import: If selected, IntelliJ IDEA automatically adds use statements for symbols from the global namespace if this doesn’t result in a conflict, for example:

    namespace A; use Exception; use const PHP_EOL; use function strlen; $myException = new Exception(); $a = strlen("Test"); echo PHP_EOL;
  • Prefer Fallback: If selected, IntelliJ IDEA neither inserts a fully-qualified name of a function or a constant, nor imports them by means of the use statement. The fallback global functions or constants are preferred in this case, for example:

    namespace A; use Exception; $myException = new Exception(); $a = strlen("Test"); echo PHP_EOL;
Last modified: 15 April 2020