IntelliJ IDEA 2023.1 Help

Create a new project

New project without frameworks

This is a general-purpose project without specific frameworks. You will be able to add the necessary frameworks and technologies later at any time.

  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 New Project.

  3. Name the new project and change its location if necessary.

  4. Select the Create Git repository checkbox to place the new project under version control.

    You will be able to do it later at any time.

  5. From the Language list, select the language that you want to use in your application.

    If you want to use a language that is not available in IntelliJ IDEA out of the box (for example, Python or PHP), click the App general add button and select the necessary option.

    The IDE will open a dialog in which you can select and install the necessary language plugin. After that, you can close the dialog and keep configuring the new project.

    Creating a new project
  6. Select the build system that you want to use in your project: the native IntelliJ builder, Maven, or Gradle.

    For Gradle, you will also need to select a language for the build script: Groovy or Kotlin.

  7. From the JDK list, 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.

  8. Enable the Add sample code option to create a class with a sample HelloWorld application.

    Select the Generate code with onboarding tips option to create a basic sandbox project with tips demonstrating some of the IDE’s essential features.

Other languages

New Java project with onboarding tips

If you are new to IntelliJ IDEA, you can create a project with onboarding tips. This will get you a basic sandbox project with tips demonstrating some of the IDE’s essential features. Follow the small guide provided in the project to try the Search Everywhere functionality, apply a quick-fix, and run and debug the code.

  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 New Project. Select Java as the project language and configure the options as described in New project without frameworks.

  3. Select the Add sample code checkbox and enable Generate code with onboarding tips.

    New Java project with onboarding tips in the editor
  4. Click Create.

As a result, IntelliJ IDEA create a project with sample code and onboarding information right in the editor.

New Java project with onboarding tips in the editor

New empty project

This is a basic project that allows you to work with different languages, Java or Kotlin classes without a predefined SDK, which could be useful for ad-hoc developing, creating mockups, and testing.

  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 Empty Project.

  3. Name the new project and change its location if necessary.

  4. Select the Create Git repository to place the new project under version control.

    You will be able to do it later at any time.

  5. Click Create.

    Creating a new empty project

New framework-based project

These are framework-based projects. Select one of the provided project types to create a project from a pre-defined template.

Maven Archetype

If you are creating a project using a Maven archetype, IntelliJ IDEA displays the Maven settings that you can use to set the Maven home directory and Maven repositories. Also, you can check the archetype properties.

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.

Create Git repository

Place the new project under version control.

You will be able to do it later at any time.

JDK

From the JDK list, 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.

Catalog

Specify which Maven repository you want to use in your project.

The internal Maven catalog is a default one. You can also select the local repository that is located in the .m2 directory, or you can select Maven central repository.

Moreover, you can click Manage Catalogs and add a custom repository if you need.

Archetype

Select the needed Maven archetype. Click Add to specify the custom archetype.

Version

The version is specified automatically.

Additional Properties

In this area, you can specify additional properties on top of the built-in ones

Advanced Settings

Specify the following Maven coordinates that are added to the pom.xml file:

  • GroupId: a package of a new project.

  • ArtifactId: a name of your project.

For more information on Maven coordinates, see Maven naming conventions.

Jakarta EE

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.

Create Git repository

Place the new project under version control.

You will be able to do it later at any time.

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.

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.

JDK

From the JDK list, 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

For more information about creating a Spring Boot application project, see Spring Boot.

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.

Create Git repository

Place the new project under version control.

You will be able to do it later at any time.

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.

JDK

From the JDK list, 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.

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.

Create Git repository

Place the new project under version control.

You will be able to do it later at any time.

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.

JDK

From the JDK list, 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.

Add sample 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.

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.

Create Git repository

Place the new project under version control.

You will be able to do it later at any time.

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.

JDK

From the JDK list, 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

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

Kotlin Multiplatform

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 | Appearance & Behavior | System Settings).

Project template

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

Multiplatform

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

  • 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.

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.

JVM

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

Build system

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

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.

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

Browser Application

Use kotlin.test

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

Use kotlinx.html

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

React Application

Use kotlin.test

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

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 Application

Use kotlin.test

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

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.

Template

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

Android SDK

Android SDK that will be used for the current module.

Android plugin

Android Gradle plugin for an application or a library that will be used for the current module.

Module dependencies

The list of modules the current module depends on.

Use kotlin.test

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

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

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).

Compose Multiplatform

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.

Configuration

Select whether your application should be for a single platform or for multiple platforms.

Platform

Select the platform for which you want to create an 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.

JDK

From the JDK list, 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.

HTML

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 type

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

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.

React

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 type

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

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.

Express

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.

Node interpreter

In this field, specify the Node.js interpreter to use.

If you choose the Project alias, IntelliJ IDEA will automatically use the project default interpreter from the Node interpreter field on the Node.js page . In most cases, IntelliJ IDEA detects the project default interpreter and fills in the field itself.

You can also choose another configured local or remote interpreter or click the Browse button and configure a new one.

express-generator

Select the application generator tool with the version to quickly create an application skeleton.

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.

AngularCLI

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.

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 Control+Space, IntelliJ IDEA shows you the available options and their description.

IDE Plugin

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.

Create Git repository

Place the new project under version control.

You will be able to do it later at any time.

Type

Select what you are going to develop: a plugin or a theme.

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.

JDK

From the JDK list, 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.

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.

Vue.js

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.

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.

Vue CLI

From the Vue CLI list, select npx --package @vue/cli vue.

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

Use the default project setup (babel, elint)

To bootstrap your application with babel and ESLint, select the Use the default project setup checkbox.

Vite

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.

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.

Vite

From the Vite list, select npx create-vite.

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

Template

Select the community maintained Vite template that targets the framework you are going to use in your application.

Last modified: 21 June 2023