近期,JetBrains发布了其旗舰产品IntelliJ IDEA的2018.2版本。新版本支持即将推出的Java 11、断点意图(Breakpoints Intentions)、MacBook的Touch Bar等特性,并改进了Spring Boot、Scala和Docker插件。

\\

Java

\\

IntelliJ IDEA 2018.2支持Lambda参数使用的本地变量新语法(即JEP 323)。这是定于11月推出的Java 11中的一个新特性。该特性支持开发人员在Lambda表达式中使用var

\\

\//Java 8,不支持var。 \BiConsumer\u0026lt;Processor, String\u0026gt; consumer = (Processor x, String y) -\u0026gt; x.process(y);\//Java 11,支持var。\BiConsumer\u0026lt;Processor, String\u0026gt; consumer = (var x, var y) -\u0026gt; x.process(y);\

\\

为配合Java 11对var的支持特性,在IDE中按住“Ctrl/⌘”键并将光标驻留于var上,将会显示该变量的类型。

\\

对于代码中冗长的方法链,IntelliJ IDEA将会给出类型提示(Type Hint)。面对具有泛型的长方法链时,开发人员可通过该功能查看每个调用的类型提示。

\\

\\

2018.2为使用Extract Method(提炼方法)的重构新添了一个预览面板。它有助于开发人员在确认更改前查看重构的可能情况。

\\

\\

IntelliJ IDEA改进了对@org.jetbrains.annotations.Contract标注的支持。该标注支持开发人员为特定参数的传递指定一个响应方法,这将为空性(Nullability)分析以及其它一些代码检查提供帮助。其约束新增的支持值包括:new,方法应该返回一个非Null的新对象;this,方法应该返回一个非Null的本身(this)指向;paramX,方法应该返回第X个参数。

\\

Stream API支持也做了改进。它将会显示不必要的排序操作,以及错误使用了收集器(Collector)或集合(Colleciton)。此外,它还新增了对collect()(toSet())方法之前冗余调用distinct()方法给出警告。

\\

Java项目的调试也做了大量的改进。如果开发人员组合使用Alt+Enter键及其他一些可用意图(Intension),就可能会看到三种新的断点意图:在类中只停(stop only)、类中不停,以及在当前对象中只停。此外,调试中还提供了一种新的Caller过滤器,支持开发人员从指定方法调用时在一个断点处只停,或是从指定方法调用时跳过一个断点。

\\

用户界面

\\

新版本还交付了一系列用户界面上的改进。现在IDEA直接支持MacBook的Touch Bar,并在Touch Bar界面的中间显示TouchJ IDEA按钮。这使得开发人员可以直接从Touch Bar运行、调试、提交更改和更新项目。对于macOS上的IntelliJ主题,现在支持以更暗方式显示标题栏,并添加了一些新的图标。而Linux上的IntelliJ主题也做了一些更新。

\\

\\

Scala

\\

IntelliJ IDEA对Scala插件做了多项改进。它支持开发人员以内联提示的方式查看隐式转换和参数,并在一个提示工具(Tooltip)中浏览并扩展显示信息。现在,Scala插件中添加了Scalafmt格式化工具。要配置Scala插件,可依次点击菜单项“Preferences/Settings”\u0026gt;“Editor”\u0026gt;“Code Style”\u0026gt;“Scala”。

\\

类型标注的自动完成和模式匹配功能也做了改进。如有可能,Scala插件会对类和接口给出一组建议的类型模式,参见下图:

\\

\\

JavaScript/Typescript

\\

2018.2还改进了对JavaScript和TypeScript的支持。开发人员可以使用新的提炼组件(Extract Component)重构特性新建一个React组件,使用新的Code Coverage特性发现并未在客户端使用的JavaScript/TypeScript代码,并对代码做手工功能测试。为此,开发人员需要使用Code Coverage启动一个JavaScript Debug配置,并与Chrome中的应用进行交互。配置完成后,IntelliJ IDEA会在Coverage工具窗口中给出一个代码覆盖情况报告。

\\

此外,开发人员可使用一系列JavaScript和TypeScript意图,例如实现接口、创建派生类、实现接口或抽象类的成员、生成switch语句中的case,以及使用“for..of”实现迭代运算。

\\

Spring

\\

在2018.2中新添了一个Spring Integration Diagram。它使用XML或Java标注显示了Spring应用的配置情况,包括gateway、channel和bridge等。

\\

\\

2018.2针对Spring Boot应用做了一些改进。新的Diagram Model支持开发人员对Spring Boot应用运行时Bean之间的依赖关系做可视化。开发人员可以通过Run Dashboard管理HTTP请求映射。

\\

\\

Docker

\\

IDEA的Docker插件日渐成熟。新支持的特性包括使用新的Use Soft Warps操作支持Docker日志换行(wrap word)。开发人员也可以从Compose节点和容器浏览对应的Compose和Docker文件。此外,现在支持定义一个用于为Docker文件执行docker build命令的根目录。

\\

更多信息,以及完全的改进列表,提供于“新特性”页面中。

\\

查看英文原文: IntelliJ IDEA 2018.2 Supports Java 11, MacBook Touch Bar and More

IntelliJ IDEA 2018.2支持Java 11、MacBook Touch Bar等新特性相关推荐

  1. IntelliJ IDEA 2018.2 发布,支持 Java 11

    转载自   IntelliJ IDEA 2018.2 发布,支持 Java 11 近期,JetBrains发布了其旗舰产品IntelliJ IDEA的2018.2版本.新版本支持即将推出的Java 1 ...

  2. 阿里云计算赶超 IBM;扎克伯格或遭逼宫;IntelliJ IDEA 新版支持 Java 11 | CSDN极客头条...

    「CSDN 极客头条」是从 CSDN 网站延伸至官方微信公众号的特别栏目,专注于一天业界事报道.风里雨里,我们将每天为所有朋友播报最新鲜有料的新闻资讯,让所有技术人随时紧跟业界潮流. 快讯速知: 阿里 ...

  3. Eclipse 4.9 正式发布,支持 Java 11

    转载自  Eclipse 4.9 正式发布,支持 Java 11 来看看 Eclipse 4.9 带来了哪些新特性! 1.外观 新增类似大纲视图的"Minimap" 间主题/暗黑主 ...

  4. Apache Ant 1.9.13和1.10.5发布–支持Java 11单文件源程序

    我们刚刚发布了Apache Ant的1.9.13和1.10.5版本 . 与往常一样,您可以从Ant项目下载页面下载它. 这两个版本主要是错误修复版本. 但是,1.10.5版对" java&q ...

  5. 最新版Byte Buddy完全支持Java 11

    Java字节码工程库Byte Buddy最新版本完全支持Java 11以及自Java 8以来引入的所有类文件和字节码新特性.其中包括新的ConstantDynamic(有时称为condy)特性和Jav ...

  6. Eclipse 2018-09 (4.9)如何支持Java 11

    Eclipse 2018-09 如何支持Java 11 Java现在已经出了最新的版本Java 11.安装了Java11,安装了最新的Eclipse, 结果发现Eclipse 2018-09版本默认还 ...

  7. Java番外篇2——jdk8新特性

    Java番外篇2--jdk8新特性 1.Lambda 1.1.无参无返回值 public class Test {interface Print{void print();}public static ...

  8. Java 9 中的 9 个新特性

    Java 9 中的 9 个新特性 Java 8 发布三年多之后,已经于在2017年9月21日发布了. 你可能已经听说过 Java 9 的模块系统,但是这个新版本还有许多其它的更新. 这里有九个令人兴奋 ...

  9. 深圳Java培训学习:Java8.0新特性之Lambda表达式--【千锋】

    深圳Java培训学习:Java8.0新特性之Lambda表达式–[千锋] 前言 Java 8 已经发布很久了,很多报道表明Java 8 是一次重大的版本升级.本篇文章,主要给大家介绍的是lambda表 ...

最新文章

  1. 走近分形与混沌(part6)--奇异吸引子与蝴蝶效应
  2. excel匹配_Excel中的数据匹配和查找
  3. css实现3行2列居中高度自适应布局
  4. 【jQuery笔记Part1】10-jQuery操作html-获取设置
  5. 微服务 SpringBoot 通过jdbcTemplate配置Oracle数据源
  6. Lync 小技巧-26-由于服务器连接问题,一些演示功能不可用
  7. java桌面开发_java开发windows桌面应用
  8. R语言学习之R程序包安装
  9. 2019年计算机类毕业设计论文题目推荐
  10. VS2017 和 Matlab R2016b 混合编程配置问题解决!
  11. 基于Jenkins和Kubernetes流水线实现应用的自动发版
  12. iPhone访问Ubuntu网络共享文件夹
  13. java怎么把数据返回给客户端_java 服务器怎样给客户端传输数据
  14. Scrum立会报告+燃尽图(Beta阶段第二次)
  15. 【海子诗全编】序及后记
  16. 神通数据库v7.0试用版安装步骤
  17. 基于STM32超声波风速风向测量仪
  18. linux ubuntu系统忘记root密码的解决办法
  19. 怎么办理高新技术企业认定高新技术企业认定流程
  20. 访问学者在新加坡访学有哪些饮食习惯?

热门文章

  1. 通过SecureCRT和PuTTY连接臻云CentOS版云主机
  2. Java 集合系列16之 Spring Boot 配置文件 选项配置(一)
  3. 【直通BAT】剑指Offer 经典试题整理(5)
  4. 区块链开发公司开拓新用途 区块链对网络安全的作用
  5. Linux防火墙之介绍
  6. Zookeeper的Leader选举
  7. 如何进行大数据可视化分析
  8. 做数据分析时注意事项
  9. 物联网平台发展前景如何快速发展
  10. flutter推荐路由器插件:go_router