IntelliJ IDEA 2019.2: Java 13 Preview Features, Profiling Tools, Services Tool Window, and More

The news of the day: a major upgrade of our flagship IDE – IntelliJ IDEA 2019.2 – is out! With this release, IntelliJ IDEA gets a load of awesome new features and improvements. If you are eager to try out this incredible version of IntelliJ IDEA, please proceed to our website or update to it via Toolbox App!

Here is a round-up of the highlights in this release. Visit the What’s new page for the full details.

blog@2x

Java

  • Java 13 is coming out in September, and, as usual, IntelliJ IDEA is ready for it. The IDE provides support for the Switch Expressions preview feature (JEP 354) and its new syntax, and for the Text Blocks preview feature (JEP 355).
  • The IDE can perform the Inline method refactoring even when the return statement interrupts the execution flow.
  • The new Find cause action for issues detected by dataflow analysis can navigate you to the questionable piece of code.
  • We’ve improved the code duplicates detection and extended it to many other languages.
  • Code completion can now understand typos and will provide the most probable suggestion for a mistyped pattern.
  • While working with the structural search, the IDE will instantly highlight all the found occurrences of your structural search pattern in the editor.

For more details, see the Java section of the What’s new page.

Profiling Tools

  • A welcome change! IntelliJ IDEA 2019.2 now integrates with Java Flight Recorder on Windows, macOS, and Linux, and with Async profiler on macOS and Linux.

To learn more, visit the Profiling Tools section of the What’s new page.

Services tool window

  • The brand new Services tool window provides a single place to view all connections and run configurations that you’ve configured to report to the Services View.
  • The IDE displays the file system of the running Docker container in the Files tab of the Docker node in the Services tool window.

Find more details in the Services section of the What’s new page.

Performance

  • This release comes with much-improved startup times.

Editor

  • Manage all code style per scope via the EditorConfig file. Learn more.
  • Syntax highlighting for over 20 different programming languages thanks to the built-in integration with the TextMate text editor.
  • The default behavior of the Move Caret to Next Word action has been changed, and now the IDE moves the caret to the end of the current word.
  • As you type, the Tab key navigates the caret outside the closing brackets or closing quotes, by default.
  • Surround a selection with a quote or brace is on by default.
  • IntelliJ IDEA now works smoothly with large files.
  • The new default keymap on macOS is macOS 10.5+, instead of Mac OS X.
  • To make code easier to read, we’ve changed the line spacing and now 1.2 is the default value. You can always change the line spacing in Settings / Preferences | Editor | Color Scheme | Color Scheme Font

For more details, see the Editor section of the What’s new page.

Appearance

  • To make quick-fixes more discoverable, we’ve given the inspection tooltip a new look, so now it not only displays the problem description, but also instantly provides you with the first available fix.
  • The New Class dialog gets a new look and it now shows a preview of the list of all the possible choices straight away.
  • The code completion popup has been given a fresh new look.
  • There’s a new modern borderless UI on Windows 10.
  • The new View | Appearance | Descriptions option in Tree Views adds additional information, such as file sizes and modification time, for elements in lists and trees in the Project View.
  • The editor and tool windows tabs including debugger tabs have undergone a bit of a makeover to look the same in the Light and Darcula themes.
  • While we are on the subject of uncluttering the UI – we’ve cleaned up the toolbar in the Find Usages tool window and removed or grouped together all the icons that were rarely used. We’ve also cleaned up the context menus.

For further details on these new features, please visit the Appearance section of the What’s new page

Gradle

  • You can view the Gradle dependencies as a diagram, by clicking on the Show Dependencies icon on the Gradle tool window toolbar (Alt+Shift+Ctrl+U on Linux and Windows / Alt+Shift+Cmd+U on macOS).
  • This release comes with code insight improvements in build.gradle files. Now code completion works for the task declaration, the Gradle tasks’ notations, and even inside dependency blocks.
  • We’ve improved the display of the output of Gradle operations, to provide you with information about the current status of the sync/build process, and now the status tree and output console are shown together side by side.
  • The Gradle settings dialog has been reworked and cleaned up.

For more details, see the Gradle section of the What’s new page.

Maven

  • Output of Maven sync is now displayed in the Build tool window, to make the progress and error reporting more visible and to simplify the navigation.
  • IntelliJ IDEA offers code completion inside the Maven dependencies in the pom.xml file out of the box.
  • The bundled Maven version has been updated to v3.6.1.

For more details, see the Maven section of the What’s new page.

Version Control and Diff

  • IntelliJ IDEA 2019.2 brings out-of-the-box support for the native Git ignore files handling. Learn more.
  • The IDE will remind you to modify and include into a commit the files you commonly commit together with the files you’re currently modifying.
  • It is now possible to commit from the Local Changes tab; just enable the option Commit from the Local Changes without showing a dialog at Preferences / Settings | Version Control | Commit Dialog.
  • View the Git file history for a directory or multiple directories selected from the Project View.
  • Two new options, Abort Merge and Abort Cherry-pick, are available in the Branches popup when there is an ongoing merge or cherry-pick process.
  • Customize VCS Log columns by choosing one of the following columns: Author, Date, or commit hash, which will be displayed in the VCS Log tab.
  • Update Info after Update Project action is shown as Log tab.
  • The improved Compare Branches action in the Git Branches popup menu displays in the Log tab a list of all the commits that exist in one branch but do not exist in the other.
  • The new Show Diff with Working Tree action shows the Diff between the current and selected branches.
  • The improved Collapse Unchanged Fragments mode of Diff now shows the method name in which the current code chunk is modified, to make it easier for you to understand the context.
  • The IDE now prompts you to add files to the version control that were copied into a project externally.

Find more details in the Version Control section of the What’s new page.

Kotlin

The bundled Kotlin plugin has been updated to v1.3.41.

  • Better Kotlin JPA support includes: code completion, error highlighting, gutter icons for navigation, and the ability to generate Kotlin entity classes.
  • The Async stack trace action now shows the state of the variables at the last point of suspension.
  • The new interactive mode for Kotlin scratch files shows you the results on the fly after a certain timeout, without the need to explicitly rerun the script.
  • The IDE highlights Kotlin TODO comments in the editor and displays them in the TODO tool window.
  • If you use external nullability annotations for Java, the IDE warns you about incorrect usages of annotated Java methods from Kotlin.

To learn more, visit the Kotlin section of the What’s new page.

Scala

  • IntelliJ IDEA now shows a type ascription hint and highlights the parts that don’t match the expected type.
  • Type mismatch tooltips are now fine-grained, vertically-aligned, and offer a pairwise comparison.
  • Type annotation hints now support dynamic folding, tooltips, navigation, and brace matching.
  • IntelliJ IDEA can now wrap (or unwrap) expressions automatically, as you type.
  • The IDE now uses grey to color all redundant code uniformly, so the highlighting is less obtrusive.
  • We’ve improved code completion so that you can now complete the whole case clause.
  • Now you can inject languages into multiline string literals with margins.
  • IntelliJ IDEA fully supports the Build Server Protocol (BSP).

Find more details in the Scala section of the What’s new page.

Groovy

  • Support of Groovy 3.0 syntax has been improved – we now support nested code blocks and have made the braces and arrow in closure expressions bold by default, to make it easier to distinguish code blocks from closures.

Visit the Groovy section of the What’s new page to learn more.

JavaScript and TypeScript

  • A new intention, Propagate to destructuring intention (Alt+Enter), can replace an extra variable, if it’s possible, with another destructuring.
  • When you rename a symbol in a JavaScript or TypeScript file, the IDE now groups together dynamic usages and, by default, excludes them from the refactoring.
  • More precise code completion is available for components and their props for the Vuetify and BootstrapVue libraries.

For more details, visit the WebStorm What’s new page.

JVM Debugger

  • Now the Step Into action offers you a choice of methods to step into.

Shell Script support

  • Rich editing support is available for shell scripts including word and path completion, Quick documentation preview, and even a textual rename.
  • The IDE integrates with Shfmt – an external formatter engine, Shellcheck – a handy inspection tool, and Explainshell – a website which offers detailed explanations for selected commands.
  • You can create a Run Configuration to execute a script.

Visit the Shell Script section of the What’s new page to learn more.

HTTP Client

  • HTTP Client supports cURL requests. Simply paste a cURL string and the IDE will automatically convert it into a full request.
  • HTTP Client now keeps all the cookies for you and transfers them in the next requests.

See more details in the HTTP client section of the What’s new page.

Terminal

  • Now when you run a command that outputs a long line, the Terminal soft-wraps it gently, keeping all the links working.

Check out the Terminal section of the What’s new page to learn more.

Database Tools

  • Full-text search allows you to search through the data sources or groups of data sources for some data with unknown location.
  • You can filter by data source in search and navigation.

For more details, visit the Database Tools section of the What’s new page.

Plugins

  • We’ve made the Plugins page more ergonomic.
  • The new IDE version is stripped of idle plugins. In this release, we’ve unbundled several plugins: Struts 1, J2ME, JsTestDriver, Griffon (1.x), and CloudBees. Learn more.
  • Node.JS is now bundled with IntelliJ IDEA Ultimate.

Find more details in the Plugins section of the What’s new page.

Kubernetes

  • The Kubernetes plugin gets Kustomize support. The IDE offers completion for keys and paths, provides inspections, rename refactoring, and more.
  • You can add a custom resource definition (CRD) specification from external sources using URLs.

Find more details in the Kubernetes section of the What’s new page.

JetBrains Runtime

  • IntelliJ IDEA 2019.2 runs under JetBrains Runtime 11 by default.

As usual, IntelliJ IDEA not only comes with fancy new features, but also with stability and performance improvements, and countless bug fixes. If you want to dive into the details, here is a link to the release notes.

We want to say a big Thank You to all our users for sharing your thoughts and suggestions with us via our issue tracker, Twitter, and here in the comments. IntelliJ IDEA wouldn’t be where it is today without you!

We hope you enjoy all the new features and improvements that we’ve prepared! Download IntelliJ IDEA 2019.2!

Happy Developing!

About Zlata Kalyuzhnaya

IntelliJ IDEA Marketing Manager at JetBrains. twitter: @ZlataKalyuzhnay ‏
This entry was posted in Releases and tagged . Bookmark the permalink.

66 Responses to IntelliJ IDEA 2019.2: Java 13 Preview Features, Profiling Tools, Services Tool Window, and More

  1. Alx says:

    Incorrect update from 2019.1.3. Embedded JRE is not fully updated and 2019.2 can not start.

  2. Vladimir says:

    It’s been fixed. Thanks. I am afraid you need to download installer to avoid update issue next time. http://www.jetbrains.com/idea/download/#section=windows

  3. W says:

    Toolbox gets stuck at “updating” with 100% downloaded, remaining ~0s

  4. Roman says:

    Is it possible to disable borderless UI?

    • Zlata Kalyuzhnaya says:

      Hi Roman. Why do you want to disable borderless UI?
      And, yes it’s possible – use the ide.win.frame.decoration registry (shift + ctrl + alt + /)

      • Alex R says:

        Thanks for the registry editor shortcut !
        I do like borderless UI without titlebar taking up limited vertical space, but new tab style was unusable, as the lack of borders there made them look so blended-in, I did not know what to click on, and the active tab highlight is so subtle I cannot tell what file I am looking at.

        disabling key ide.new.tabs fixes that problem

      • Thom S says:

        For me, I just want to disable it because I really don’t like borderless anything. It’s just an old-fashioned preference of mine to have the toolbar separate from the window border and I’m glad the option to turn off this new view exists.

      • Patrick Nelson says:

        Thank you so much for revealing this is even possible. I absolutely abhor this change. I’m not against minimalism, but it came at a dramatic usability cost for me (given I rely heavily on the windows 10 built in standard title bar and various context menus). I have the opposite issue, but thanks for detailing that specific setting so I could figure out how to nuke it for good.

        I just wrote a detailed support email but here are my reasons why I dislike this being forced as it creates a few usability problems:

        1. Prevents you from right clicking title bar to open the standard keyboard accessible context menu (e.g. press “n” to minimize or “c” to close”)
        2. Reduced area for the title bar.
        3. Surfaces this flatness antipattern which is a problem for UI window focus. i.e The titlebar isn’t highlighted when you switch to/away. Everything is so flat, it’s hard to know if your IDE even has focus.
        4. The top left icon context menu isn’t keyboard accessible; it isn’t the standard Windows 10 window context menu.
        5. Also, double clicking that icon no longer closes the window.
        6. When maximized, clicking (or double clicking) the far edge just outside the icon should also either open that context menu (or close, likewise if double clicking).
        7. Reduced title bar real estate: For some this is good, for me this unfortunately isn’t as friendly since now I may accidentally click a menu instead of the title bar when I want to very quickly grab/move the window.

        Please… please surface this option more easily so it’s not so hard to find. But thank you for at least allowing us to disable it!

      • Nicolai Sonne says:

        Thank god….
        I do a lot API/integration work and have multiple IDEs running simultaneously.
        Because I switch between several projects/IDEs I need to quickly identify the project. With the old design the project name was always in the top left of the window.
        With borderless, the project name was indented and not quickly locatable.
        I tried for a few days, but it didnt become less of a headache.

        Thanks for the fix.

  5. I installed the update through snap. Initially my settings were overwritten by defaults. Followed these instructions here: https://intellij-support.jetbrains.com/hc/en-us/community/posts/360002410059-Cannot-import-setting-on-PhpStorm-2018-3-2?page=1#community_comment_360000308480

    Would be nice if I was presented with the config dialog without having to rename the installed directory.

    Overall its better than what I use to have to do to update this thing. Thanks for the snap.

  6. Also Let me know if I can help out with the issue I outlined above

  7. Simone says:

    – With this update 2019.2 I lost my settings, don’t know why.

    – Every time that I reopen the application asks to connect projects on GitHub (turning to red the code on the left menu). Then I select Preference->Version Control-> VCS from Git to None. After choosing that, why it continue to ask next launch of IntelliJ. I think you can fix this.

    • Dmitriy Smirnov says:

      > With this update 2019.2 I lost my settings, don’t know why.
      Was a prompt to import settings displayed on start? Maybe the settings were imported from some older version?

      > Every time that I reopen the application asks to connect projects on GitHub
      Sorry, but it is not clear what is going on from the description.

      IntelliJ should not prompt for GitHub connection unless some explicit action is called. Maybe there is some third-party plugin installed, e.g. GitToolBox does connect to the remote automatically.

      If it is not the case please file an issue with details (screenshots and logs) at https://youtrack.jetbrains.com/issues/IDEA

      • Simone says:

        > With this update 2019.2 I lost my settings, don’t know why.
        Was a prompt to import settings displayed on start? Maybe the settings were imported from some older version?

        >>To be honest went I checked for update. The new version was present and I updated, no more actions.

        IntelliJ should not prompt for GitHub connection unless some explicit action is called. Maybe there is some third-party plugin installed, e.g. GitToolBox does connect to the remote automatically.

        If it is not the case please file an issue with details (screenshots and logs) at https://youtrack.jetbrains.com/issues/IDEA
        >> I have only a project linked on GitHub by IntelliJ. I don’t understand why the application repeat to ask me for every project to put on GitHub. After the selection of No on VCS it keeps continue to asking me every restart of the program

        • Simone says:

          You were right I uninstalled GitHub-bundle plugin, and now the projects don’t appear in red.

          Thank you so much!

          Regarding the lost settings, do you think are still there under a file configuration? I use Mac.

          • Dmitriy Smirnov says:

            Sorry, but I still don’t understand what exactly the issue was – what prompt did you get, what red project do you mean (probably files were marked as Unversioned), and how uninstalling (which is not possible in case of bundled plugins, they can be only disabled) GitHub plugin could help. If you don’t mind please submit a bug report to https://youtrack.jetbrains.com/issues/IDEA with issue details, e.g. screenshot

            • Simone says:

              I fixed both the problems:
              1) it was a problem of a plug-in of GitHub. Deleting the plug-in IntelliJ doesn’t ask anymore to connect, put all the projects to GitHub
              2) I copied the setting folder folder of the previous release and past into the new one.

  8. TG says:

    2019.1.3 -> 2019.2
    font spacing looks dense like fist them. maybe cause idea jre 8 -> 11.

  9. nita22 says:

    I installed ideaJ, WebStorm, PyCharm in a same computer.
    Borderless UI is only work on PyCharm, I can’t find a solution in setting. I don’t know how to trigger the feature. Thx

    • LukBukkit says:

      I can confirm this problem.
      I’ve upgraded all my installed IDEs (CLion, GoLand, IDEA, PhpStorm, PyCharm) to 2019.2 and the borderless UI only works with GoLand and PyCharm.
      It would be really nice, if it would also work with the rest. :)

  10. Gaetan Zoritchak says:

    Seems that rendering as changed. I’ve got a problem with Fira code.

    See https://twitter.com/gz_k/status/1154316658061783040/photo/1
    With Intellij 2019.2 (on the right) the font is too thin.

    Maybee it’s this problem: https://youtrack.jetbrains.com/issue/IDEA-164394

    Does Intellij use its own version of the font?

    • Ignacio says:

      same here but with Source Code Pro, not even uninstalling all the other variants fixed the issue so had to downgrade to 2018.3

      • Alexander says:

        Exactly. For me it seems like even font itself have been changed. I just don’t remember which one was in 2019.1 version. I’d like to change it back.

  11. vsp says:

    -Dide.projectView.show.visibility=true

    is not working any more in 2019.2.

    • Dmitry Jemerov says:

      The registry key has been replaced with a regular UI option, “Show Visibility Icons” in the gear icon for the project view.

  12. Jade Walker says:

    Find usages does not seem to work for methods. Works fine for attributes. I did an Invalidate caches and Restart, but it did not help. Is there a new setting I need to make to get the old behavior?

    • Dmitry Jemerov says:

      What exactly do you mean by “does not seem to work”? What exactly happens when you invoke the action?

  13. Markus Klein says:

    The applications are not grouped anymore in the new Services View. How can I change this?

  14. Sathish says:

    Some Keystore doesnt work. cmd+Y doesnt delete the line. Rendering has been changed completely.

  15. Mihai Sprinceana says:

    The new duplication notification is not working properly or at least I don’t like it.
    On my IDE now it’s only marking the first line of the block as duplicated. You need to click on the tooltip to see how many lines are in total duplicated. It’s very hard to spot the duplicates at the first sight if you have a big file.

    I’ve tried resetting to the default setting as well. It didn’t worked.

    • Dmitry Jemerov says:

      This was an intentional change. We do not expect that spotting duplicates is the primary concern of developers looking at source files, so we made the duplicates highlighting less prominent in order to balance it better with other types of highlighting. We plan to revisit this again in 2019.3 (but we have no plans to make duplicates as visible as they were in 2019.1).

      • Mihai Sprinceana says:

        Can you please tell me if there an option use the old one notification: eg: by modifying a property in the registry ?

        It helps me a lot when refactoring.
        Thanks

    • leo says:

      The old duplication notification is very useful. Vote for getting it back or at least give it an option to enable it.

  16. Paul M says:

    Thanks Roman for the ide.new.tabs registry key, without it the new tab bar is unusable. Everything looks like one gigantic tab in the new UI, you can’t tell which tab is selected now and where to click to select another tab.

  17. Anton says:

    Tab panel updating very slowly. It takes literally 5-10 second in IDEA to re-render tabs panel when switching to half-visible class tab. Makes tab panel unusable if more than 1-2 classes are opened.

  18. Vinícius Bueno says:

    The maven ‘re run’ option was removed, now we have to use mouse to open maven goals dialog to click again. Please put this option back, thank you!

  19. joshuan says:

    “IntelliJ IDEA offers code completion inside the Maven dependencies in the pom.xml file out of the box. ” is not good enough.

    The code completion is slow, and mostly does not work for me; back to 2019.1.3 (on mac and windows 10)

  20. XU FAN says:

    Why is there no WebServices option in my right-click project?
    it appeared in 2019.1.3

  21. Jack E says:

    Under Run/Debug Configurations, where did the “Shorten command line” option go?

    • Olga Klisho says:

      Hello, it should be there under the “JRE” field. Please share the screenshot of your configuration.

  22. Suyan says:

    On macOS, borderless is so uncomfortable. Those window control buttons don’t disappear,so every window with them is so ugly. (And without title bar, sometime I can’t recognize which project is editing immediately, so borderless always make more trouble.
    And another problem, in this version, the Webstorm always be blank and it stopped with continuing loading components. Please check this.I have to fall down to 2019.1 series to avoid this problem.

  23. Mehdi says:

    The new borderless UI on Win10 is neat! Great job. Do you guys plan on porting it to Linux and macOS?

  24. Yann R says:

    Hello,

    Since the update i loose all my logs from maven. Usually, i use the right maven panel to launch jobs, and nothing appear in the “Services” panel :(

  25. dev dev says:

    Disappointed, Latest IntelliJ IDEA 2019.2 eats a lot of RAM !
    From -Xmx750m to -Xmx2038m, really ?

    • Dmitry Jemerov says:

      In our experience, the IDE performs better on most projects if you increase the amount of the available RAM. There were no significant changes regarding the memory requirements of IntelliJ IDEA in 2019.2, but we decided to bump the default memory allocation to 1/8 of the available physical memory because the IDE simply runs faster in this configuration. You can reduce the memory size if you prefer, the default configuration is applied only once.

  26. Dude says:

    I hate the removal of the new project dialog because I’m stuck with settings that I don’t want and “module” that I don’t use or need. Where is the setting to not create separate modules per source set and to use auto import? Test modules aren’t needed in my case and I don’t need them clogging up my workflow, specifically, I don’t need to see them in any of the dialogs.

  27. damu says:

    Awesome borderless window

  28. Tim van der Leeuw says:

    I’m holding off of upgrading until there are some patches addressing at least some of the worst problems that are being reported – when I tried the last preview before release performance was atrocious, even more horrible than 2019.1 which already was much worse than 2018.3.
    In fact I’m already regretting not being on 2018.3 anymore on my Mac.

    I hope performance and usability issues can be quickly addressed.

  29. joshuayan says:

    still work on 2019.1.4;

    same issue is on 2019.2.1 preview; adding dependence in pom.xml is so hard, and UE is too bad

  30. David says:

    Big slow down on intellisense and spotting of syntax errors and compile errors for this version. Wish i hadn’t upgraded from 2018 :-/
    Am anxiously awaiting 2019.2.x!!!

  31. Bernhard Poiss says:

    > Now the Step Into action offers you a choice of methods to step into.

    So what’s the difference between step into and smart step into now?

    • Olga Klisho says:

      Bernhard, step into now is smart by default. So it offers you a choice of methods to step into. In case you want to see the previous behaviour, you may disable “Always do smart step into” in Settings | Build, Execution, Deployment | Debugger | Stepping.

Leave a Reply

Your email address will not be published. Required fields are marked *