IntelliJ IDEA 2017.1

Integriert die Unterstützung für Java 9 und aktualisiert den JVM Debugger.
März 29, 2017
Neue Version

Funktionen

Java

  • Java 9 - The update brings support for the upcoming Java 9 and its new module system. The IDE supports the latest versions of JDK, helps import projects, and offers coding assistance when editing module declarations. A built-in inspection validates module declarations and provides a quick-fix to adjust the project dependencies accordingly when necessary.
  • Java 8 - The quick-fixes introduced earlier, which help migrate for loops to Stream API calls, have been improved and now support more complicated cases. Also introduced a quick-fix that can migrate Stream API calls back into for loops. When possible, the IDE suggests replacing Map.put statements and updating a value associated with a given key with a call of Map.merge. Also, the IDE suggests replacing certain Map operations with Map.getOrDefault.
  • JUnit 5 inspections - All JUnit 4 inspections are now available for JUnit 5.
  • Regexp syntax highlighting - Dedicated section in Settings -> Editor -> Colors & Fonts for RegExp syntax highlighting.

JVM debugger

  • Async stacktraces - The new feature called Capture alters the stacktrace by substituting its parts related to asynchronous code execution with the corresponding parts of the stacktrace captured from where the asynchronous code is passed.
  • Stepping into async code - The Smart Step Into action now also supports asynchronous code and steps into lambda expressions executed on other threads.
  • Drag a breakpoint to remove it - Added a new option called Drag a breakpoint to the editor area to remove it (available in Settings -> Build, Execution, Deployment -> Debugger, disabled by default). If you enable the option, a click on a breakpoint, instead of removing it, will enable/disable it. This option may saves you from accidentally removing a breakpoint and losing its parameters such as a condition.
  • Memory view in Debug - The JVM Debugger Memory View, introduced with IntelliJ IDEA 2016.3 as a separate plugin is bundled and available inside the Debug tool window.
  • Emulated method breakpoints - Method breakpoints are now emulated by the IDE as a combination of regular line breakpoints. As a result, you have method breakpoints that are a little slower to set but do not slow down application performance.

Version control

  • More display and search options in Log - Now you can choose whether you want to use regular expressions and case sensitivity when searching over commit messages. Also, you can choose how much information about branches and tags the Log viewer displays.
  • Ignore imports and formatting in Diff - The Diff dialog got a new option called Ignore imports and formatting. As its name says, it ignores changes within import statements and whitespaces (at the same time it respects whitespaces within String literals).
  • File history: performance and branches - The File History feature for Git has become faster. Besides better performance, it now can display the revisions graph, and even has a button to include changes from branches other than the current.
  • Branches popup: favorites and speed search - Now you can mark any branch as a favorite, for easier access. The new popup also provides better search

User interface

  • Find in Path - The Find in Path dialog, which had received a Preview tab earlier, has been reworked from the ground up and now shows instant results in the first place.
  • Emoji in Editor - The editor now supports Unicode emoji characters (which are sometimes used in comments and String literals). On Mac OS X, emoji characters are rendered as colored images, while on Windows and Linux, emoji are rendered as monochrome characters.

Spring

  • Spring Data - Support for Spring Data has been also updated following the changes introduced with Spring Data 2.0. The improvements include support for many new annotations and types (reactive types), new inspections, code completion, navigation, and other coding assistance features. The Spring tool window now has a new tab called “Data” to help you quickly navigate through the repositories defined in your project.
  • Spring Testing - Support for Spring Testing has been updated based on the changes introduced with Spring Boot 1.4.3 and the upcoming Spring 5.0 (test runners and inspections).
  • Spring MVC - Support for Spring MVC has been updated with coding assistance for path attribute in JSP form tags.

Kotlin - The Kotlin plugin bundled with the IDE has been updated to Kotlin 1.1, which enables the use of the language in many new scenarios.

  • JavaScript support - JavaScript target is no longer experimental, and supports all Kotlin language features, a large part of the standard library, as well as JavaScript interoperability. This allows you to migrate the browser frontend of your applications to Kotlin, while continuing to use modern JavaScript development frameworks such as React.
  • Coroutines - As a lightweight alternative to threads, coroutines enable much more scalable application backends, supporting massive workloads on a single JVM instance. In addition to that, coroutines are a very expressive tool for implementing asynchronous behavior, which is important for building responsive user interfaces on all platforms.

Scala

  • Akka - Find Usages is now aware of the differences between Ask and Send usage types. Warnings are fired for Actor's factory method arguments that aren't consistent with defined Actor's constructors. The new action helps to auto-generate factory methods for an Actor companion object at the caret.
  • SBT - SBT tool window now lets you to easily run SBT tasks and has a button that opens SBT Shell tool window where you can use code completion to type and run SBT commands. You can now delegate your IDE Build process to SBT. The option is still experimental and should be manually enabled via Build, Execution, Deployment -> Build Tools -> SBT -> Use SBT shell for build and import. Last, but not least, Run Configurations for tests now offer two new options: Use sbt (delegates the Run process to SBT) and Use UI with sbt (uses the IDE's Test Runner UI, WIP).
  • Project Wizard - The Project Wizard has been reworked for better user experience and now offers the SBT project as the default option. Settings dialog for SBT projects has been also simplified. Dotty become a subtype of the Scala SDK and now can be selected with both the SBT and IDEA project templates.
  • Worksheet REPL mode - The Worksheet editor has been extended with the REPL mode (WIP), that simulates REPL and executes only the newly appended lines of code, which results in better performance because the unchanged code is not compiled or evaluated.

Gradle

  • Composite Builds - Support for Composite Builds, introduced earlier, has been greatly improved. Now the IDE automatically detects “includeBuild” in Gradle settings and configures the project accordingly. No manual configuration is required

Groovy

  • Logback and Parameter Hints - This update brings coding assistance for editing Logback appender configurations. It includes code completion, finding usages, navigation and renaming. The Parameter Hints option, which was added for Java in IntelliJ IDEA 2016.3, is now available for Groovy as well.

JavaScript

  • Vue.js - New plugin that adds first-class support for Vue.js. The IDE not only understands the template, script and style blocks with various lang attributes in the .vue files, but also provides completion for Vue directives and component names.
  • Auto import for React components - Select a component defined in your application in the completion popup – and the IDE will add an import for it automatically. Forgot to import React? IntelliJ IDEA will provide a quick-fix.
  • New ES6 quick-fixes - The IDE now helps you convert for..in loops on arrays to for..of statements introduced in ECMAScript 6. All you have to do is press Alt+Enter on the loop and select this conversion option. Another new intention can convert iterations with forEach to for..of.
  • Sorting imports by module - The Optimize imports action can now automatically sort JavaScript and TypeScript imports alphabetically by module and reorder the imported members. You can configure this behavior in the Code Style settings.
  • Angular language service - To help you work with Angular even more, the IDE adds support for the Angular language service, developed by the Angular team to improve code analysis and completion for Angular-TypeScript projects. Run npm install @angular/language-service --save-dev to enable that in your project.
  • Improved TSLint support - Integration with TSLint adds support for TSLint-powered quick-fixes. You can also import some of the code style rules defined in tslint.json to the IDE code style settings – just reply ‘Yes’ when prompted about this in the tslint.json file.
  • Better testing experience - Running Mocha and Jest tests is even easier now with the new Run icon on the gutter. Click the icon next to the test or the suit name and select Run or Debug. The test status will be displayed next to the test name for all supported test frameworks.
  • Completion in package.json - Adding new project dependencies to package.json became easier: the IDE now provides code completion for package names. The IDE also suggests the latest versions of the packages.
  • Support for Standard code style - The Code Style settings now support JavaScript Standard Style. To use it, go to Settings -> Editor -> Code Style -> JavaScript and click Set from Predefined Style – Standard.
  • Module dependency diagram - To overview the application structure, you can now visualize the module dependencies that a file, group of files or folder has. Right-click on a file or directory in the Project view or in the editor, and then select Diagrams -> Show diagram.
  • New code style options - This update brings lots of new code style options for JavaScript and TypeScript. You can now configure the use of semicolons to terminate statements, trailing commas, quotes type, and wrappings for ternary operators and variable declarations with single var.

Database tools

  • Managing schemas - The Schemas tab comes back to the Data Sources and Drivers dialog. Now it’s a tree with the ability to choose the current schema. Added the Pattern field where you can describe what you want to be introspected. The Ctrl+Q shortcut will give you information about the syntax.
  • Importing tables - The IDE now allows you to import table schema and data from one database to another (even of a different type, e.g. from MySQL to Sql Server). To import a table, simply drag it with mouse to the data source where you'd like it to copy. The information about the progress is published on the Database tab of Event Log.
  • SQL resolution scopes - Now, you can map any SQL file (or entire folder) to any datasource in Settings -> Tools -> Database -> SQL resolution scopes. If you do that, all unqualified objects from these locations will be resolved to the selected datasource (or database, or schema).
  • Default search path - Before, you set the search path according to the context of the console opening. Now the default search path is set for any console. You can change it in any moment or go back to the default one.
IntelliJ IDEA

IntelliJ IDEA

Vollständige Umgebung für die Java-Entwicklung.

Sie haben eine Frage?

Live-Chat mit unseren JetBrains-Lizenzierungs-Spezialisten.