IntelliJ IDEA 2016.1 is Here

Today, we’re excited to introduce IntelliJ IDEA 2016.1, the first update in the series of releases planned for 2016. We hope you’ll be surprised to find out how much we’ve managed to accomplish in four months. Download the new version today and try all the new features for yourself. Read this post to learn about the major improvements.

IntelliJIDEA_20161_blog@2x

New Features

Debugger

Evaluate Expression and Watches now accept Groovy expressions when debugging Java code. This may be convenient due to the compactness of Groovy, especially when working with collections.

idea-debugger-groovy

If the current thread is blocked by another suspended thread, the IDE will suggest resuming it.

Previously Resume used to resume all suspended threads. Now you can change this behaviour to only resume the current thread.

If the IDE notices that the source code is different from that being executed, it warns you to help prevent time waste or errors.

idea-debugger-sources-mismatch

VCS

The IDE now supports git worktrees introduced in Git 2.5 to simplify working with multiple revisions of a single repository.

The Branches menu offers two new actions: Checkout with Rebase and Rename. Checkout with Rebase is faster than performing the two actions separately.

Merging and comparing revisions just got easier with the added by-word difference highlighting.

idea-vcs-merge

Editor

The code editor introduces a new action to re-order method arguments, array elements and tag attributes: Move Element Right/Left (Alt+Ctrl+Shift+Arrows or Alt+Cmd+Shift+Arrows for OS X).

Static methods and constants are now auto-imported in the same way as classes – with a single press of Alt+Enter.

idea-import-static-members

The Add unambiguous imports on the fly option now works for static methods and constants.

The code editor supports right-to-left languages (Arabic, Hebrew).

idea-editor-rtl

Gradle

The project model of the IDE is now aligned with that of Gradle: each source set of a Gradle project is now a separate module in the IDE – and may have its own dependencies. This change has solved many issues reported by our users.

As with WAR artifacts, the IDE is now able to automatically configure EAR artifacts found in the build script.

Java 8

Inline Method and Change Signature now transform related method references in the project to lambda expressions.

New inspections added to ensure the code using java.util.Optional, lambda expressions and functional interfaces is safe.

idea-intention-6

If you use Guava, the IDE will offer replacing FluentIterable, Function, Optional and Predicate  to the corresponding Java 8 APIs.

idea-guava-quick-fixes

Kotlin

IntelliJ IDEA 2016.1 bundles Kotlin 1.0. Kotlin is compatible with Java 6/7/8, Android and any other Java frameworks (e.g. Java EE, Spring) and build tools (e.g. Gradle, Maven). Kotlin can be used with existing Java projects. Starting with v1.0, Kotlin is backward-compatible.

To make learning Kotlin more fun, we’ve developed Kotlin Edu–a plugin that lets you take interactive Kotlin learning courses.

Scala

Code completion is more relevant now as it respects the type of symbols, their definition scope and their usage. The IDE prioritizes local variables, then parameters, then fields, then methods, etc. If the IDE expects a type, it will also take that into account.

idea-scala-completion-2

Also, code completion now suggests property names for case classes within pattern matching statements.

idea-scala-completion

JavaScript

Support for ES6 and TypeScript gets better with new refactorings (Create Method, Extract Method, Inline Method and Introduce Field), intention actions (Make Class Abstract, Make public/private and Remove Modifier), highlighting of unused imports, and working Optimize Imports. Completion adds imports automatically.

idea-ts-inline-rename

TypeScript 1.8 is supported.

AngularJS 2 support adds coding assistance for event and property bindings, and completion inside data bindings. Code insight and navigation are available for directives, variables defined in templates, custom event handlers, and paths in templateUrl and styleUrls fields.

idea-angular

The IDE now understands components defined using the new AngularJS 1.5 module.component() method helper.

The debugger for Chrome makes it easier to debug asynchronous client-side code. It allows you to stop at inline ES6 arrow functions, and to stop at the breakpoints set in web and service workers.

Spring Frameworks

Support for Spring Boot adds coding assistance within YML and banner.txt files. @SpringApplicationConfiguration is respected when creating run configurations for tests. ‘Find usages’ is now working for configuration properties defined by user.

idea-spring-boot

Working with Spring MVC is improved with added support for @EnableWebMvc.

idea-spring-mvc-controller-views

Many issues reported by our users have been fixed.

Thymeleaf

The IDE now offers coding assistance for user-defined dialects. Thymeleaf 3.0 is supported.

Android

It is now possible to profile leaked activities and use new lint checks added in Android Studio 1.5.

Others

The Terminal tool window now offers Quick search via Ctrl+F (Cmd+F for OS X).

idea-speed-search-terminal

The Docker plugin has been improved in many ways, including Docker Machine support, a separate tool window, right-side panel to see logs and manage environment variables and port bindings, and more.

idea-docker

IntelliJ Platform has migrated to Java 8 which means plugin developers can now use Java 8 features in their code.

For more details on the new features and improvements, please read the What’s new page, where you can also download the edition of your choice.

New versioning

As we announced earlier, with this release we’re changing the versioning scheme and moving away from one “major” release per year to several “equal” releases per year. Also, we’re aligning releases and version numbers across all products under JetBrains Toolbox. The new versioning will follow the format “YYYY.R” where yyyy represents the year, and “r” the release within that year.  For more details on the new versioning, read this blog post.

UPDATE: If you’re running IntelliJ IDEA 15 Ultimate, you can sometimes see a confusing message in the Updates dialog, saying that you can evaluate the new version for 30 days, or buy a license key or upgrade online–regardless to the active state of your subscription. We apologize for this, and promise to fix it in the minor update that we’ll be releasing within several days.


The JetBrains Team
The Drive to Develop

About Andrey Cheptsov

Part-time dreamer. JVM/JavaScript geek. IntelliJIDEA Marketing Manager at JetBrains.
This entry was posted in New Features, News & Events, Releases and tagged , . Bookmark the permalink.

138 Responses to IntelliJ IDEA 2016.1 is Here

  1. Your mom says:

    You guys left a Russian и, “and”, in here

    If you use Guava, the IDE will offer replacing FluentIterable, Function, Optional и Predicate to the corresponding Java 8 APIs.

  2. jlnr says:

    > It is now possible to profile leaked activities and use new lint checks added in Android 1.5.

    This should probably say “Android Studio 1.5”, unless you folks have really old-school phones :)

  3. Ryan says:

    How should I go about upgrading from 15.X? The check for updates dialog is not suggesting 2016.1 to me.

    • Andrey Cheptsov says:

      There was a delay. Should work now.

      • Ka-Hing Cheung says:

        Check for updates is giving me a download button which tells me to download a new copy from the intellij website. Will there be a patch download from 15.0.4 to 2016.1?

      • Mike says:

        I’m on 15.0.5 (Windows) and it’s still claiming I have the latest version, 6 weeks later.

        This is with Updates set to “New Major Version Releases”; if I change that to “Early Access Program” it offers me 16.0.2, but I can’t get it to offer me a stable 16.0.1.

        • Mike says:

          Sorry, typo in above: “Early Access Program” is offering me 16.1.2 RC2 (build 145.970), can’t get “New Major Version Releases” to offer 16.1.1.

  4. Anton says:

    Great news! I was frustrated at first, when as an annual subscription license holder I ran “Check for update” and was presented with “You can evaluate this product for 30 days or buy the license”, but after I downloaded the new version, I was able to use my account to validate my license.

  5. Anton says:

    D74Sd1hA

  6. Alex H. says:

    Very nice.

    However, the “‘Find usages’ is now working for configuration properties defined by user.” feature is pretty neat but it doesn’t seem to work with Lombok annotated classes. The gutter icon isn’t showing up and find usages returns “No usages found in Project Files”.

    • Robbin says:

      Did you get this working? I’ve been wanting to use Idea for a while, but Lombok just doesn’t work with Idea. Never had any problems with eclipse. With the javac compiler, it Idea fails to recognize any of the lombok classes. Switching to eclipse compiler at least allows the project to be built, but editor still flags all lombok annotations.

      • Alex H. says:

        You need to activate “Annotation Processing” under the Compiler options. Works great for me! (Also get the Lombok plugin)

  7. Dan says:

    Great work guys. As Anton said, be nice to fix the issue where it said “You can evaluate this product for 30 days or buy the license” even though IntelliJ should already know if I’m entitled to it based on my subscription status.

    It would also be nice if it could say at that point whether the new version is perpetually available based on subscription start date. You only get told once you download the new version and start it – via the splash screen – which is a little late. Be nice to be told when presented with upgrade notice if that is doable (should be).

    • Hadi Hariri says:

      Dan, sorry about that. We’re looking into it.

      Regarding availability of perpetual license, I believe this information should be available via your JetBrains Account.

    • Andrey Cheptsov says:

      We’re working on fixing this issue in the minor update that we’ll be releasing within several days.

  8. Ranga says:

    Is cursive plugin not supported any more? I dont see that in the list of plugins in this version

    • Florin Patan says:

      The Cursive author needs to support the platform, not JetBrains. There are some internal changes that might affect the plugin so it might be some time until the plugin is updated (or not, depending on how fast the author is).

    • G Seaton says:

      Like with many other plugins, it might take a few weeks (or so) for the plugin developer(s) to support the new release. I’m a paying (and satisfied) Cursive customer and I had to flip my symbolic link back to the previous version after determining that the Cursive plugin was ‘compatible’ with the 2016.1 release. No worries. Since IntelliJ/Cursive is my daily driver for the Clojure development work I do, I’m willing to wait a little while for Cursive/Colin to catch up.

    • Nathan says:

      The Cursive plugin showed up tonight in the “Browse repositories …” section under IDEA 2016.1 configuration this evening. I think it’s ready.

  9. Florin Patan says:

    Will a patch update for the EAP users be possible? Thank you all for your hard work! It’s truly the best piece of software out there.

  10. Tai Le says:

    How to use worktree feature in new IntelliJ? Do we need to create worktree with commandline and then import modules again using new IntelliJ instance? Could we create worktree in IntelliJ and it will switch to that worktree for us?

    • Andrey Cheptsov says:

      Simply open the project in a worktree folder and the IDE will detect the repository and offer to configure it in Settings -> VCS.

  11. Yuriy Badalyantc says:

    I’m Kubuntu x64 14.04 user and I have very ugly fonts in 2016.1. I tried some tweaks to fix it, but with no luck. Does 2016.1 have new font rendering system? Why this is happening? For now I have to use 15 version.

  12. themnd says:

    The docker plugin stopped working with this new release saying:

    Problems found loading plugins:
    Plugin “Docker integration” was not loaded: required plugin “org.jetbrains.plugins.remote-run” not installed.

    Searching for remote-run plugin seems like it is only available in the “ultimate” edition.
    If that is true it means that the “Docker” integration that was working with the community edition now it is available only for “Ultimate” edition, can you confirm this?

  13. Oleksandr says:

    After upgrading Intellij Idea to version 2016.1 I got problem with Docker plugin due to missed dependency org.jetbrains.plugins.remote-run

    Plugin Error Problems found loading plugins: Plugin “Docker integration” was not loaded: required plugin “org.jetbrains.plugins.remote-run” not installed. Disable Docker integration Open plugin manager

    Do you any ideas where I can find this plugin ?

    http://stackoverflow.com/questions/36080066/failed-installation-of-docker-plugin-for-intellij-idea-2016-1-due-to-required-p

  14. Jason says:

    Why don’t I have perpetual fallback license for this version. My “All Products” annual subscription started 03/11/2015. So I bought a product thats supported only for a few months then abandoned in favor of a new version, presumably IDEA 16…

  15. Krzysztof says:

    In Intellij IDEA 15 I have some plugins installed (like Jenkins, OtrosJumpToCode) and I have configuration panels for this plugins in settings. In 2016.1 these panel disappears but plugins are still working. Drawback is that I can’t configure these plugins

  16. Hector Romero says:

    It seems the gradle changes broke my build.
    I have a gradle multibuild project, Subproject A has a project dependency to Subproject B.

    On the editor itself there are no errors, everything is fine. But If I try to compile the project I get a lot of errors saying Subrpoject A cannot find any classes on Subproject B.

    The editor shows no errors, this is on the Messages view when I try to make the project, and of course if I try to run Subproject A (which is a war) on Tomcat it fails with ClassNotFoundException.

    This is working just fine on IntelliJ Idea 15.

  17. BAS says:

    Do you think JB will ever release an “evergreen” IDE? This would be appreciated as reinstalling, reconfiguring, reacquiring plugins, re- re- re- etc. is not that enjoyable.

  18. Bruce says:

    Am I the only one that finds the new gutter icons huge? Is there a way to decrease their size?

  19. Manishwaran says:

    can anyone explain how to create a new scala project ? i downloaded even scala plugin and created the scala project but i cant find src folder to create a scala class or object. Aslo there is no youtube tutorial for 2016.1 version of Intellij idea. I am new to this IDE and i have no other option as i fed up running configuration in eclipse. Please help me. Thanks in advance.

    • kubukoz says:

      Hi!

      I think when you add a plain Scala project, it should create a src directory automatically. Try creating an SBT project, wait until SBT resolves all the necessary stuff, and then the src dir should be there.

  20. Deon says:

    The only issue I have found is that when hitting escape, the cursor goes missing. The edit window is supposed to grab focus and obviously contain the cursor. After hitting tab, the cursor appears. Sometimes when ctrl-left/right arrow to another file, the cursor goes missing again.

  21. Deon says:

    Also when closing a tool window, for instance Command-4 to close the run window, no cursor, when focus is supposed to go back to the edit window.

  22. Patrick says:

    I use Ubuntu14, Idea 2016 is much slower than 15, especially when scrolling code.

    and I use Scala.

  23. Mike says:

    Is the Global Menu (Ubuntu 15.x) gone? RC1 still worked.

  24. John Zaf says:

    Python plugin fails with message,
    “Unable to save plugin settings: The plugin Pythonid failed to save settings and has been disabled. Please restart IntelliJ IDEA”

    Does anybody have the same problem?

    I tried both on Windows & Linux on Intellij Ultimate.

    Thanks

    • John Webb says:

      I had problems with the Python Plugin not working — actually hanging at IntelliJ startup — with the 2015 version just prior to the new 2016.1 release. I’ve now successfully updated and enable the Python plugin in both OSX (Yosemite) and Linux (Ubuntu 14.04).

      One thing I’d recommend is using the File/Settings/Plugin panel to actually select, upgrade and enable the plugins. I did have some initial difficulty when I just clicked on the “There is an update…” notification popup (upper right of window).

      Hope this helps ! Good luck.
      John

    • Timo Erbach says:

      Similar one. Python module not enabled on python project. Enabling it goes to restart the ide. Now everything works fine. Closing and starting the ide same problem again. Ubuntu 14.04 LTS

    • Ben says:

      I also am getting this error.

    • Logan Gorence says:

      I do have the same problem.

    • Mirko says:

      I have the same problem also with other plugins and a general message that IntelliJ cannot save settings

    • Mirko says:

      It seems that during migration from Version 15 some of the plugins and/or plugin settings remain in the .IntelliJIdea15 directory, but IntelliJ 2016 can’t save to that.
      When I remove the .IntelliJIdea15 directory, almost all plugins become invalid and cannot be loaded anymore. How can we correctly migrate plugin settings to the.IntelliJIdea2016 directory?

      • Kevin says:

        I was fighting with this today and was able to fix it by removing local and remote Python SDK’s. I *think* it was the remote SDK but I can’t prove it. Then I invalidated all caches and restarted. After restarting, I re-enabled the plugin (and of course restarted) and it’s been working as usual since. I upgraded from Intellij15 to 2016.1 when the problem started happening.

  25. Kevin says:

    The fixed issues link is broken. YouTrack says Value "2016.1" is not valid for fields Fix versions, Affected versions in project IntelliJ IDEA.

  26. Raza says:

    Hello,
    I’ve upgraded to Idea 2016.1 and the navigate to Class or File does not work. I am using it in Ubuntu 15.10 x64. It was working fine in the previous release.

  27. krupal shah says:

    Unfortunately Intelij IDEA community edition for windows is not downloading from here : https://d1opms6zj7jotq.cloudfront.net/idea/ideaIC-2016.1.exe . The link is broken. It is downloading for some time and then fails. Please update the link.

  28. David says:

    src/main/resources folder does not get compiled and put in the classpath. My logback.xml does not take effect. Please fix this!

  29. Kinz says:

    I am using 16.1 already, but when debug in the “watches” panel, I can’t use groovy?

    There is no option to choose languages ? am I missing something?

    • Andrey Cheptsov says:

      Please check if a Groovy library is in the classpath?

      • guai says:

        Will classLoaders affect this feature? For example when groovy is in classpath, but the code currently being debugged was loaded from different classLoader and have no straight access to groovy classes.

  30. marc says:

    Breaks a great deal of code completion, namely in django: model foreignkey reverse lookups no long work, as well as filter helpers.

  31. Joern says:

    After upgrading to IDEA 2016 and working with an existing project, running the tests through the IDEA (set up to use Gradle test runner) didn’t work. I’ve then re-imported the Gradle project (deleting .idea, opening the folder again) and it messed up the complete structure of my project.
    Now all my tests are having red markers everywhere as somehow it cannot figure out the dependencies to the main sources anymore. “Refresh all Gradle projects” does not help.
    Please advise! Thanks

    The project I have trouble with is open-source https://github.com/campudus/tableaux

  32. Tim says:

    Where I can find “Other settings” for plugins in IDEA 2016.1?

    http://i.imgur.com/enccXzG.png

    E.g. https://git.io/vVCW7 settings for FindBugs-IDEA plugin?

  33. Raul Medina says:

    After upgrading to this new version, I’ve a lot of errors with Maven related projects, libraries not found and errors in the pom.xml that weren’t there it IntelliJ 15. I’ve the ultimate version.

  34. fritz says:

    After updating to IntelliJ IDEA 2016.1.1 Build #IC-145.597 I cannot debug without debuggable attribute any more:
    “Cannot debug application xxxx on device xxxx. This application does not have the debuggable attribute enabled in its manifest. If you have manually set it in the manifest, then remove it and let the IDE automatically assign it.”
    But if I add it to the manifest IntelliJ warns that I should not set it explicitly.
    Bug ? (I am not using gradle)

  35. Leslie Wheeler says:

    Maven issues : all my maven dependencies have disappeared. I can do clean maven builds, but the editor view of the files shows a lot of red…

  36. Shashanka says:

    I am facing lot of issues while running JUnits in debug mode since I moved to 2016.1.

  37. notamusedaboutupdate says:

    Scala support is completly broken. My maven project has java and scala source folders.
    The scala source folder is not recognized as source folder anymore since the update to 2016.1.1. Before with 2016 it was correctly recognized. For scala compilation net.alchim31.maven is used.
    All debug and run configurations are lost too.

    • Pavel Fatin says:

      I’ve just checked the Maven & Scala support and everything seems to work fine.

      Make sure that the Scala plugin is enabled and updated, then re-import your project using the Maven toolbar in IDEA.

      Please provide more info in SCL-10140

  38. Terry Vimont says:

    Just upgraded to 2016.1.1 and am not able to find the Spring roo console window. It used to be in the Tools menu.

    I have all the Spring plug-ins enabled.

    Please let me know how to enable the Spring Roo Console tool.

  39. Hugo says:

    Gradle Play plugin doesn’t seem to be able to package external dependencies correctly in this version of IntelliJ, version 15 worked perfectly even if it needed to explicitly being told where are the external dependencies. Seems to be IntelliJ related since previous versions of IntelliJ IDEA worked correctly.

    • Tonsic says:

      Same problem here. “Refresh all Gradle projects” and re-creating the workspace didn’t work also. IDE make reports error, and lots of redlines on the code. Going back to intellij 15.

  40. Serhiy says:

    Typescript compiler optional methods problem. Class that implements interface with optional methods has an error of not implementing all optional interfaces. “Method X from interface X is not implemented…

  41. Kimi Chiu says:

    Love the new features in 16!
    But it seems to have so many problems there.
    Is it worth to upgrade from 15?
    And the check update tells me that I’m already using the latest version which I’m not.
    So I have to download from the website?

  42. Alex K says:

    That’a a huge disappointment to discover that after updating IDEA to 2016.1 several projects get broken because Gradle + sourceSets “improvements”. Now, Gradle refresh breaks project setup (fake modules cross dependencies) which was always Ok before 2016.1.

    • Vladislav says:

      You can use dependency resolve aproach that was used before 2016.1, just untick “Create separate module per source set” option (File | Settings | Build, Execution, Deployment | Build Tools | Gradle).

  43. P Gupta says:

    Is there a way to downgrade to the previous version of 2016?
    I got the latest 2016.1.1. yesterday but am seeing UI freezing and slowness in editor functions and would like to revert back.

  44. Minhaj says:

    When will be grails view support back?

  45. Ricahrd Fan says:

    now i can’t create an android project without gradle, is there any way to do that?

  46. Chris says:

    When creating a Spring Boot app, MVC nor Thymeleaf templates seem to work at all.
    Autocomplete does not find html files, and Thymeleaf does not find properties.

  47. E says:

    Merging and comparing revisions: can you separate the merge and ignore buttons(perhaps with the merge << left side of the number and the X on the right(depending what side local/server you are comparing from) .

    With the buttons being so small, and having totally different effects, users can mistakenly click on one when they meant to click on the other, which could be annoying of the commit was a large chunk of code.

Leave a Reply

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