Releases

IntelliJ IDEA 2024.1 Is Out!

IntelliJ IDEA 2024.1 has been released with an array of exciting upgrades to help streamline your workflows. 

You can get the latest build from our website, through the free Toolbox App, or via snaps for Ubuntu.

Download IntelliJ IDEA 2024.1

IntelliJ IDEA Ultimate now boasts full line code completion, providing comprehensive code-aware suggestions for entire lines of code. Support for Java 22 ensures compatibility with the latest language features. The overhauled terminal enhances command-line operations, while sticky lines in the editor facilitate smoother navigation through codebases. 

Watch this video overview to catch up on the major enhancements introduced in the new version: 

There are dozens of other improvements to various parts of the IDE in v2024.1 listed in this blog post. For a comprehensive overview of the new features, visit our What’s New page.

Key highlights

  • IntelliJ IDEA Ultimate 2024.1 enhances coding efficiency with full line code completion, predicting and suggesting entire lines of code based on contextual analysis. It is powered by ML models trained for various languages and frameworks that run locally, ensuring the privacy of your data. Included with your subscription, it’s pre-enabled for Java and Kotlin, with customization options available for other languages. Learn more in this blog post.
  • The IDE provides full support for the latest Java 22 features. Learn more in this blog post
  • Version 2024.1 introduces an overhauled terminal featuring both visual and functional enhancements to streamline command-line tasks. Learn more in this blog post.
  • We’ve introduced sticky lines in the editor to simplify working with large files and exploring new codebases. This feature keeps key structural elements, like the beginnings of classes or methods, pinned to the top of the editor as you scroll and provides an option to promptly navigate through the code by clicking on a pinned line.

AI Assistant 

  • AI Assistant has received several valuable updates, including improved test generation and cloud code completion, custom prompts for commit messages, the ability to create files from code snippets, and updated in-editor code generation. You can get more information about the latest improvements in this blog post. Please note that in version 2024.1, AI Assistant has been unbundled and is now available as a separate plugin.
  • We’ve enhanced code highlighting for Java and Kotlin within AI Assistant’s responses. Code in the AI chat is now highlighted just as it would be in the editor.

User experience

  • Basic IDE functionalities like code highlighting and completion now work for Java and Kotlin during project indexing, which should enhance your startup experience. 
  • You can now scale the IDE down to 90%, 80%, or 70%, giving you the flexibility to adjust the size of IDE elements both upward and downward.
  • We’ve made slight adjustments to the layout of the New Project wizard, positioning the language list in the upper left-hand corner.

Java

  • IntelliJ IDEA 2024.1 introduces the ability to inject languages into string templates. 
  • We’ve made a range of changes to enhance logging workflows. 
  • We’ve implemented new inspections and quick-fixes. You can learn more in this blog post.
  • The IDE now offers an enhanced user experience with multi-release JAR libraries.
  • We’ve revamped the Conflicts Detected dialog. It now features an updated UI, ensuring better readability and easy navigation. 
  • We’ve implemented a new inlay hint for the Rename refactoring, positioning it on top of the changed code element for easy accessibility. 

Kotlin

  • IntelliJ IDEA 2024.1 introduces the new Kotlin K2 mode, leveraging the embedded K2 Kotlin compiler for enhanced Kotlin code analysis. Learn more. 
  • Starting from version 2024.1, the IDE uniformly applies the official Kotlin style guide as the default option for all projects, unless explicitly specified otherwise.
  • The IDE now accurately preserves static imports, ensuring they are transferred exactly as they appear in the source code.

Scala  

  • We’ve enhanced Scala 3 support, including better recognition of modifier mixes, improved indentation handling for cut and paste operations, and the proper association of end markers with their syntax structures. 
  • Debugger support for Scala 3 has been enhanced, and autocompletion now accurately handles cases when it is used together with the using and given keywords or with unapply signatures.
  • We’ve improved code highlighting in Scaladoc popups and in the quick documentation popup. 
  • Compiler-based highlighting has been improved.
  • The IDE now adds a .gitignore file to new SBT projects.
  • We added Play 3 to the list of supported versions for smooth compatibility of Play, Scala, and JDK versions.

Version control systems

  • Version 2024.1 introduces an enhanced code review experience for both GitHub and GitLab users with the implementation of a new in-editor review mode. Learn more.
  • For GitHub, GitLab, and Space, it is now possible to see changes in a certain branch in a separate Log tab within the Git tool window.
  • This release brings support for posting reactions to review comments for GitHub pull requests and GitLab merge requests.
  • There’s a new column in the Log tab of the Git tool window, allowing you to easily review the results of GitHub commit checks performed by your CI system.  
  • After pushing changes to version control, the IDE now alerts you with a single notification, suggesting an action to create a pull/merge request.
  • We’ve added visual indicators to notify you of pending updates in your code review workflow.
  • The IDE now helps you avoid committing oversized files by notifying you of the restriction.
  • The merge dialog now includes the Allow unrelated histories option, making it possible to merge branches with no common history.
  • In the Git tool window, the Show all branches button has been replaced with a branch filter, allowing you to review changes made to a file within a designated branch.
  • We’ve added a Stash tab in the Commit window for quick access to temporary changes. For those who use both stashes and shelves, there’s an option to switch to a combined tab in Settings/Preferences | Version Control | Git.  
  • In the diff viewer, you can now specify folders and files to be ignored during the comparison process in order to focus solely on relevant changes. 
  • In the Branches popup, you can now filter search results by actions and repositories.
  • We’ve removed the Git tab from the Search Everywhere dialog by default. You can return it in Settings / Preferences | Advanced Settings | Version Control. Git.

Build tools

  • IntelliJ IDEA now parses pom.xml files to construct project models swiftly, providing instant access to the project structure while the complete project model with all the dependencies is built in the background.
  • We’ve added long-awaited support for the Maven Shade Plugin’s renaming functionality.
  • The list of Maven repositories, along with their indexing statuses, is now displayed in the Maven tool window.
  • The quick documentation popup now provides an easy way to download source code.  

Run/Debug

  • It is now possible to set inline breakpoints for multiple statements.
  • Library calls are folded by default in the Debug tool window’s call stack.
  • Code coverage settings are now placed in Settings/Preferences | Build, Execution, Deployment | Coverage. 
  • IntelliJ IDEA 2024.1 introduces conditional statement coverage capabilities. Now the IDE both shows which lines have uncovered conditions and specifies any conditional branches or variable values that are not covered.
  • The new version offers simplified importing for JaCoCo test coverage reports, with a direct link available right in the Coverage tool window. 

The features and enhancements in version 2024.1 that are designed to facilitate work with frameworks, technologies, and databases, as well as the updates for web development, are accessible in IntelliJ IDEA Ultimate only.

Frameworks and technologies

  • In Spring projects, the IDE now offers autocompletion for all beans from the application context and automatically autowires them. 
  • User experience with Spring diagrams has been improved, offering easy access via gutter icons or intention actions and better visualization of Spring stereotypes.
  • The Search Everywhere dialog now includes Endpoints tab, which appears in projects where URL search results are pertinent. 
  • The HTTP Client in version 2024.1 expands authentication options, supports extra parameters for token and authentication requests, automates code_challenge generation and code_verifier passing. Upgraded to Netty, it now supports SSL, proxies, and HTTP/2. Its toolbar has been redesigned to match the IDE’s new UI.
  • We’ve introduced a new settings editor for Quarkus run configurations. For both Maven and Gradle projects, it offers easy access to popular settings like Run profile and Environment variables.
  • The Quarkus Dev UI is easily accessible via a new icon added to the Run tool window’s toolbar. 
  • We’ve optimized the code behind JSON schema validation and completion. As a result, the IDE now handles these tasks faster and with reduced memory consumption.
  • HTTP headers are now easily completed in all common scenarios, such as with Spring WebClient and REST Assured tests. 
  • IntelliJ IDEA Ultimate 2024.1 integrates support for OpenRewrite, expanding refactoring capabilities and providing you with a toolkit for improving code quality, consistency, and maintainability.
  • We’ve implemented WireMock support. It is provided via a plugin that you can install from inside the IDE or get from JetBrains Marketplace.
  • IntelliJ IDEA Ultimate 2024.1 brings improved Terraform support that simplifies the process of creating, managing, and scaling your infrastructure. Learn more.

Database tools

  • The data editor now features a local filtering option. 
  • We’ve implemented the ability to view single records in the data editor.
  • It’s now possible to rearrange columns in CSV files. 
  • We’ve streamlined UUID management with a new Generate UUID action, an option to edit columns with UUIDs, and validation of UUID columns during editing for PostgreSQL users.
  • The new IDE version eliminates the need to manually select sessions, streamlining query execution.
  • You can now format multi-row INSERT statements so their values are aligned.
  • The IDE now analyzes the aggregates used in SELECT clauses and includes the appropriate column list in the GROUP BY clause suggestions.
  • The Unsafe query warning now alerts you if you run a query with the WHERE TRUE condition or one of its variations. 
  • It’s now possible to specify which symbols you will use to accept code completion suggestions, allowing you to write SQL even faster.
  • External databases shared via data catalogs are now supported. Their content is introspected, and completion is available for them.
  • IntelliJ IDEA Ultimate 2024.1 supports commands from the four main Redis Stack modules: RedisJSON, RediSearch, RedisBloom and RedisTimeSeries.
  • JSON documents are now displayed in a dedicated folder. You can view their values in the data viewer, and you can specify their JSON paths. 

Web development 

  • We have significantly enhanced the quick documentation popup. It now supports syntax highlighting for code blocks. 
  • IntelliJ IDEA Ultimate 2024.1 introduces several new quick-fixes for React that let you create props and states on the fly. 
  • There’s a new Language Services widget on the status bar, providing insights into the active language services for the current file and project.


These are the most notable new features included in the IntelliJ IDEA 2024.1 release. For a complete list of changes, refer to the release notes.

Your feedback is essential in our journey to refine IntelliJ IDEA. Share your thoughts and suggestions on the latest features by connecting with us on X (formerly Twitter) or leaving a comment below. If you encounter any bugs, please report them to our issue tracker.

Happy developing!

image description