

IMPORTANT! The choice of the compiler does not affect the source code language level, and also the bytecode target level and linking. This JDK is chosen from all the JDKs used in your modules, the default project JDK, and also the JDK bundled with IntelliJ IDEA. To start the build process, the latest of the available JDKs is used. When necessary, the cross-compilation mode is used. When the option is off, all the modules are compiled with the same compiler, the one from the build process JDK. In such cases, the compiler from the build process JDK is used in the cross-compilation mode against the classes of the module JDK. The exception is when the version of the module JDK is earlier than 1.6. When this option is on and the version of the JDK associated with a module is different from that of the build process JDK, the compiler from the module JDK is used. Use compiler from module target JDK when possible

If you are not happy with the version of the Eclipse compiler bundled with IntelliJ IDEA, you can use the Path to ECJ batch compiler tool option located in the Settings | Build, Execution, Deployment | Compiler | Java Compiler and specify a particular Eclipse compiler version. Use to remove the selected module or modules from the list. Then, for each of the modules, click the corresponding Target bytecode version cell and select the version from the list. If necessary, specify the target bytecode versions for individual modules (for example if they should differ from that set for the project).Ĭlick and select the modules of interest in the dialog that opens. To specify different versions for particular modules, use the controls in the Per-module bytecode version area. If no particular version is specified, the bytecode version is defined by the compiler. (Roughly, this is the minimum target JVM version.) Select the version of bytecode to be generated. IntelliJ IDEA deduces from project settings when the cross-compilation is needed and automatically applies the -release compiler option for Java 9. Use '-release option' for cross-compilation (Java 9 and later)īy default, this option is selected. This compiler lets you perform joint compilation of Groovy and Java code using the Eclipse compiler. IntelliJ IDEA comes bundled with the Eclipse compiler.

This may be the compiler included in the IntelliJ IDEA distribution or a compiler from one of the project JDKs.Įclipse (also known as Eclipse Compiler for Java or ECJ).
