IntelliJ IDEA 2021.3 Help

Create a new project

  1. Launch IntelliJ IDEA.

    If the Welcome screen opens, click New Project.

    Otherwise, from the main menu, select File | New | Project.

  2. From the list on the left, select the framework that you want to use in your application.

  3. If suggested, configure the project SDK. To develop Java-based applications, you need a JDK (Java Development Kit).

    If the necessary JDK is already defined in IntelliJ IDEA, select it from the Project SDK list.

    If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory (for example, /Library/Java/JavaVirtualMachines/jdk-12.0.1.jdk).

    Configuring an SDK for the new project

    If you don't have the necessary JDK on your computer, select Download JDK. In the next dialog, specify the JDK vendor, version, and change the installation path if required.

    Downloading a JDK for the new project
  4. Other options differ depending on the framework that you have selected. Refer to the list below for the detailed description of options for each framework.

Java

Additional Libraries and Frameworks

Select the technologies, frameworks and languages that you want your project to support, and specify the associated settings.

Create project from template

Create a simple Java application that includes a class with main() method.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Module name

Specify the module name. By default, the project name is used.

For more information on modules and the difference between projects and modules, refer to Configure projects and Modules.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Maven

Create from archetype

Select this checkbox if you want to use a predefined project template for your project. You can configure your own archetype by clicking Add Archetype.

Name

Specify the project name.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

GroupId

Specify a package of a new project.

ArtifactId

Specify the name of your project.

Version

Specify a version of a new project. By default, this field is specified automatically.

Maven home directory

Select a bundled Maven version that is available or the result of resolved system variables such as MAVEN_HOME or MAVEN2_HOME. You can also specify your own Maven version that is installed on your machine.

User settings file

Specify the file that contains user-specific configuration for Maven in the text field.

If you need to specify another file, select the Override checkbox, click the Browse button, and select another file.

Local repository

By default, this field shows the path to the local directory under the user home that stores downloads and contains the temporary build artifacts that you have not yet released.

If you need to specify another directory, select the Override checkbox, click the Browse button, and select another directory.

Properties

By default, the columns in this area display system properties that are passed to Maven for creating a project from the archetype.

You can add, remove, and edit these properties.

Gradle

Kotlin DSL build script

Select this checkbox if you want to use the script.

Additional Libraries and Frameworks

Select the technologies, frameworks and languages that you want your project to support, and specify the associated settings.

Name

Specify the project name.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

GroupId

Specify groupId of the new project. You can omit this field if you plan to deploy your project locally.

ArtifactId

Specify artifactId that is added as a name of your new project.

Version

Specify version of the new project. By default, this field is filled in automatically.

Android

Select the type of project you want to create from categories of device form factors that are shown as tabs at the top of the wizard.

Creating a new Android project

Name

Specify the name for your project.

Package name

Specify the package name. By default, this package name also becomes your application ID. If necessary, you will be able to change it later.

Save location

Use this field to specify the location of your project.

Language

Select the Language you want to use for creating sample code for your new project.

Minimum SDK

Select the minimum API level that you want to use in the project. If you are not sure which level to select, click the Help me choose link in the dialog.

This project will support instant apps

Select the checkbox if your project supports instant experiences though Google Play Instant, and you want to enable it for your application.

IntelliJ Platform Plugin

Project SDK

Select the SDK that you want to use for developing your plugin.

Additional Libraries and Frameworks

Select the technologies, frameworks and languages that you want your project to support, and specify the associated settings.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Module name

Specify the module name. By default, the project name is used.

For more information on modules and the difference between projects and modules, refer to Configure projects and Modules.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

JavaFX

Name

Specify a name for your project.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Language

Select the language that you want to use in your application.

Build system

Select the build tool that will be used for managing dependencies, testing, packaging, automating the build process, and so on.

Test framework

Select a testing framework.

Group

Specify the unique group identifier for your project. It should preferably start with the reversed domain name you control (for example, com.example).

Artifact

Specify a name for the artifact within the group, usually the project's name.

Project SDK

Select the JDK that you want to use in your project.

If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory.

If you don't have the necessary JDK on your computer, select Download JDK.

Select the libraries that you want to use in your application.

Creating a new JavaFX project

Java Enterprise

Name

Specify a name for your project.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Project template

Select a template for your application. IntelliJ IDEA will pre-configure your project accordingly.

Application server

Specify the application server that you want to use in this application.

IntelliJ IDEA provides integration with various application servers, enabling you to start and stop local servers, connect to running remote servers, and deploy your artifacts on those servers.

Build system

Select the build tool that will be used for managing dependencies, testing, packaging, automating the build process, and so on.

Test framework

Select a testing framework.

Language

Select the language that you want to use in your application.

Group

Specify the unique group identifier for your project. It should preferably start with the reversed domain name you control (for example, com.example).

Artifact

Specify a name for the artifact within the group, usually the project's name.

Project SDK

Select the JDK that you want to use in your project.

If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory.

If you don't have the necessary JDK on your computer, select Download JDK.

Version

Select the Java EE version that you want to use.

Dependencies

Select the technologies, frameworks and languages that you want your project to support.

Spring Initializr

Server URL

Use the default https://start.spring.io/ service or specify a custom instance. For more information, see Creating your own instance.

Name

Specify a name for your project.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Language

Select the language that you want to use in your application.

Type

Select the build tool to use for managing dependencies, testing, packaging, automating the build process, and so on: Maven or Gradle.

Group

Specify the unique group identifier for your project. It should preferably start with the reversed domain name you control (for example, com.example).

Artifact

Specify a name for the artifact within the group, usually the project's name.

Package name

Specify the root package of the project. This is usually a combination of the group and artifact names, for example: com.example.springdemo.

Project SDK

Select the JDK that you want to use in your project.

If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory.

If you don't have the necessary JDK on your computer, select Download JDK.

Java

Select the Java version that the initializing service should use.

Packaging

Select whether you want to package the app as a JAR or WAR.

Spring Boot

Select the Spring Boot version.

Download pre-built shared indexes for JDK and Maven libraries

Silently download the pre-built shared indexes for JDK and Maven libraries instead of building the indexes. For more information, see Shared indexes.

Dependencies

Select starters and dependencies for your project. If you select technologies that require additional plugins, the IDE will notify you about it once the project is created, and will suggest installing or enabling them.

Spring boot

Quarkus

Server URL

Specify the URL of the starter service that you want to use in your application. By default, the https://code.quarkus/io instance is specified, but you can use another custom service.

Name

Specify a name for your project.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Language

Select the language that you want to use in your application.

Build system

Select the build tool that will be used for managing dependencies, testing, packaging, automating the build process, and so on.

Group

Specify the unique group identifier for your project. It should preferably start with the reversed domain name you control (for example, com.example).

Artifact

Specify a name for the artifact within the group, usually the project's name.

Project SDK

Select the JDK that you want to use in your project.

If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory.

If you don't have the necessary JDK on your computer, select Download JDK.

Example code

Create a code sample together with the project.

Select extensions that you want to use in your project. If you select technologies that require additional plugins, the IDE will notify you about it once the project is created, and will suggest installing or enabling them.

Selecting extensions for the new Quarkus project

For more information, refer to Quarkus.

Micronaut

Server URL

Specify the URL of the starter service that you want to use in your application. By default, the https://micronaut.io/launch/ instance is specified, but you can use another custom service.

Name

Specify a name for your project.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Language

Select the language that you want to use in your application.

Build system

Select the build tool that will be used for managing dependencies, testing, packaging, automating the build process, and so on.

Test framework

Select a testing framework.

Group

Specify the unique group identifier for your project. It should preferably start with the reversed domain name you control (for example, com.example).

Artifact

Specify a name for the artifact within the group, usually the project's name.

Application type

Select an application type from thr list.

Project SDK

Select the JDK that you want to use in your project.

If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory.

If you don't have the necessary JDK on your computer, select Download JDK.

Java

Select the Java version that the initializing service should use.

Select extensions that you want to use in your project. If you select technologies that require additional plugins, the IDE will notify you about it once the project is created, and will suggest installing or enabling them.

Selecting extensions for the new Micronaut project

For more information, refer to Micronaut.

MicroProfile

Server URL

Specify the URL of the starter service that you want to use in your application. By default, the https://start.microprofile.io/ instance is specified, but you can use another custom service.

Name

Specify a name for your project.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Runtime

Select the MicroProfile runtime that you want to use.

Group

Specify the unique group identifier for your project. It should preferably start with the reversed domain name you control (for example, com.example).

Artifact

Specify a name for the artifact within the group, usually the project's name.

Project SDK

Select the JDK that you want to use in your project.

If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory.

If you don't have the necessary JDK on your computer, select Download JDK.

Select specifications that you want to use in your project. If you select technologies that require additional plugins, the IDE will notify you about it once the project is created, and will suggest installing or enabling them.

Selecting specifications for the new MicroProfile project

Ktor

Name

Specify a name for your project.

Location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Build system

Select the build tool that will be used for managing dependencies, testing, packaging, automating the build process, and so on.

Website

A domain used to generate a package name.

Artifact

A generated artifact name.

Ktor Version

A required Ktor version.

Engine

An engine used to run a server.

Configuration in

Select whether to specify server parameters in code or in a HOCON file.

Add sample code

Leave this option enabled to add sample code for plugins added on the next page.

On the next page, select plugins (formerly known as features) that you want to use in this application. They provide common functionality of a Ktor application, for example, authentication, serialization and content encoding, compression, cookie support, and so on.

Creating a new Ktor project

Groovy

Groovy library

If the necessary version of Groovy is already defined in IntelliJ IDEA, select it from the list. Alternatively, click Create and select the Groovy installation directory.

Additional Libraries and Frameworks

Select the technologies, frameworks and languages that you want your project to support, and specify the associated settings.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Module name

Specify the module name. By default, the project name is used.

For more information on modules and the difference between projects and modules, refer to Configure projects and Modules.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Grails App Forge

Project SDK

Select the JDK that you want to use in your project.

If the JDK is installed on your computer, but not defined in the IDE, select Add JDK and specify the path to the JDK home directory.

If you don't have the necessary JDK on your computer, select Download JDK.

Grails version

Select the Grails version that you want to use in your application.

Profile

Select the necessary application profile.

Features

Select the necessary checkboxes to specify features for your project.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Module name

Specify the module name. By default, the project name is used.

For more information on modules and the difference between projects and modules, refer to Configure projects and Modules.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

JavaScript (Static Web)

Select the necessary framework:

Creating a new JavaScript project

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Version

Specify the version of the template in accordance to which the stub will be generated. Click the Refresh button to refresh the list of available template versions.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Node interpreter

Specify the Node.js interpreter that you want to use in this project. You can select a configured interpreter from the list or click Add to configure a new one.

If you have no Node.js on your computer, select Download Node.js from the list.

create-react-app

Select npx create-react-app.

Alternatively, for npm version 5.1 and earlier, install the create-react-app package yourself by running npm install --g create-react-app in the Terminal Alt+F12. When creating an application, select the folder where the create-react-app package is stored.

Create TypeScript project

Select this checkbox to enable TypeScript for your project.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Version

Specify the version of the template in accordance to which the stub will be generated. Click the Refresh button to refresh the list of available template versions.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Version

Specify the version of the template in accordance to which the stub will be generated. Click the Refresh button to refresh the list of available template versions.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Node interpreter

Specify the Node.js interpreter that you want to use in this project. You can select a configured interpreter from the list or click Add to configure a new one.

If you have no Node.js on your computer, select Download Node.js from the list.

Angular CLI

Select npx --package @angular/cli ng.

Alternatively, for npm version 5.1 and earlier, install the @angular/cli package yourself by running npm install -g @angular/cli in the Terminal Alt+F12. When creating an application, select the folder where the @angular/cli package is stored.

Additional parameters

(Optional) Specify the extra ng new options to pass to Angular CLI.

Code completion is available in this field: as you start typing the name of an option or press Ctrl+Space, IntelliJ IDEA shows you the available options and their description.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Node interpreter

Specify the Node.js interpreter that you want to use in this project. You can select a configured interpreter from the list or click Add to configure a new one.

If you have no Node.js on your computer, select Download Node.js from the list.

React Native

Select npx --package react-native-cli react-native.

Alternatively, for npm version 5.1 and earlier, install the react-native-cli package yourself by running npm install -g react-native-cli in the Terminal Alt+F12. When creating an application, select the folder where the react-native-cli package is stored.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Node interpreter

In this field, specify the Node.js interpreter to use. This can be a local Node.js interpreter or a Node.js on Windows Subsystem for Linux. .

Package manager

Specify the location of the Node.js package manager file npm.cmd. In most cases, IntelliJ IDEA detects the Node.js executable and fills in the field automatically.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Node interpreter

In this field, specify the Node.js interpreter to use. This can be a local Node.js interpreter or a Node.js on Windows Subsystem for Linux. .

Package manager

Specify the location of the Node.js package manager file npm.cmd. In most cases, IntelliJ IDEA detects the Node.js executable and fills in the field automatically.

Version

Select the version of the template in accordance to which the stub will be generated. Click the Refresh button to refresh the list of available template versions..

View Engine

Select the template engine that you want to use.

Stylesheet Engine

Select the CSS preprocessor for your project.

Module name

Specify the module name. By default, the project name is used.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Kotlin

During step 1, global project properties are defined.

Name

The project name.

Location

The path to the directory where the project will be located. If not specified, IntelliJ IDEA uses the default directory (Settings/Preferences | Appearance & Behavior | System Settings).

Project Template

Defines the initial project structure. Depending on the purpose, select one of the following templates:

JVM

  • Console Application: console application with Kotlin/JVM. Use it for prototyping or testing purposes.

Multiplatform

  • Library: library for sharing common code among different platforms.

  • Native Application: application with Kotlin/Native that works as a standalone application under a specific platform.

  • Full-Stack Web Application: full-functional web application using Kotlin/JS for the frontend and Kotlin/JVM for the backend.

Kotlin/JS

  • Browser Application: frontend application with Kotlin/JS and non-Kotlin backend for browser. If you use Kotlin for backend, the better option is Full-Stack Web Application.

  • React Application: frontend application with Kotlin/JS and React UI framework for browser.

  • Node.JS Application: a standalone application with Kotlin/JS for the Node.js runtime.

Compose Multiplatform

  • Compose Desktop Application: a compose application targeting the desktop JVM platform (Windows, Linux, macOS).

  • Compose Multiplatform Application: Multiplatform (JVM/Windows, JVM/Linux, JVM/macOS, Android) Compose project with shared code in common modules.

  • Compose Web Application: a web Compose project for JS.

Build system

Select the build tool that will be used for managing dependencies, testing, packaging, automating the build process, and so on.

Project JDK

The JDK that will be used in the project (version 1.8 or later is recommended). The JDK:

  • is essential for projects built with IntelliJ IDEA build system.

  • used for coding assistance in projects built with Gradle and Maven

If you don't have a JDK installed, you can download it right in the dialog.

Group ID

The unique identifier of your organization. Not applicable for IntelliJ build system.

Artifact ID

The unique name of the primary artifact for this project. Not applicable for IntelliJ build system.

Version

The version of the primary artifact generated by the project. Not applicable for IntelliJ build system.

Kotlin Runtime

The Kotlin Runtime library that will be used in the project. Only required for IntelliJ build system.

During step 2, the module structure of the project is configured. This step is optional.

JVM settings

Target JVM version

The version of the JVM bytecode that will be produced as the result of compiling this module.

Test framework

The framework that will be used for unit testing.

Multiplatform settings

Use kotlin.test

Adds the kotlin.test library annotations and assert functions for unit testing (enabled by default).

Kotlin/JS settings

Use kotlin.test

Adds the kotlin.test library annotations and assert functions for unit testing (enabled by default).

Use new JS IR compiler

Learn more about the features available in the new Kotlin/JS IR compiler (disabled by default).

  • Browser-specific settings

    Use kotlinx.html

    Type-safe Kotlin DSL for creating HTML elements and building DOM trees.

  • React-specific settings

    Use styled-components

    Adds a type-safe way to author and inject CSS stylesheets.

    Use react-router-dom

    Adds navigational components to keep the URLs and UIs synchronized.

    Use react-redux

    Adds state containers powered by Redux.

  • Node.js-specific settings

    Use experimental Nod.js API (kotlinx-nodejs)

    Allows access to Node.js specific features.

Compose Multiplatform settings

  • Desktop-specific settings

    Template

    Defines the initial project structure. Select one of the templates depending on your purposes.

    Target JVM version

    The version of the JVM bytecode that will be produced as the result of compiling this module.

    Test framework

    The framework that will be used for unit testing.

  • Multiplatform-specific settings

    Name

    The name of the module.

    Android SDK

    Android SDK that will be used for the current module.

    Module dependencies

    The list of modules the current module depends on.

  • Web-specfic settings

    Template

    Defines the initial project structure. Select one of the templates depending on your purposes.

    Use kotlin.test

    Adds the kotlin.test library annotations and assert functions for unit testing (enabled by default).

Web

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Module name

Specify the module name. By default, the project name is used.

For more information on modules and the difference between projects and modules, refer to Configure projects and Modules.

Content root

Specify the path to the module content root folder (the folder that stores your source code). It's recommended that you use the default path.

Module file location

Specify the path to the folder where the .iml module file should be created. By default, this file is created in the module content root folder (recommended).

Project format

It's recommended that you use the directory-based format.

Multi-module Project

Empty projects are created without modules. For such projects, you need to manually create at least one module, add content roots, and configure an SDK.

Select Multi-module Project and click Next.

Creating a new empty project

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Project format

It's recommended that you use the directory-based format.

Empty Project

This project type allows you to work with files of different types and compile individual Java and Kotlin classes. Projects of this type are created without a predefined structure, so you can configure it yourself according to your needs.

Project name

Specify the project name.

Project location

Specify the path to the directory in which you want to create the project. By default, the IDE creates a directory with the same name as the project.

Last modified: 01 August 2022