Новая версия IDEA добралась до релиза. На сайте JetBrains её описание доступно на английском, а на Хабре — на русском.
В первую очередь эти описания говорят о Java 9: мол, поддерживаются свежие билды JDK 9, и IDEA теперь помогает работать с декларациями модулей (об этом вчера у JetBrains появился и отдельный подробный пост).
Правда, за последние сутки (то есть когда релиз 2017.1 ещё не состоялся, но RC-версия уже была) и у Марио Фуско, и у Рафаэля Уинтерхалтера возникли проблемы с IDEA и «девяткой»:
I'm trying to use latest JDK9 + Idea 2017.1 but it's even not able to resolve native Java classes. Any clue? /cc @hhariri @trisha_gee pic.twitter.com/YYBeNArINr
— Mario Fusco (@mariofusco) March 21, 2017
@trisha_gee Is IntelliJ working with Java 9 for you? I still get an initialization error with io.netty.util.internal.PlatformDependent0.
— Rafael Winterhalter (@rafaelcodes) March 21, 2017
А Триша Джи (JetBrains), пытаясь помочь в твиттере им обоим, между тем и другим успевает ещё и давать видеоинтервью на тему «IDEA и девятка» с живым демо:
Watch on #Periscope: Java 9 and IntelliJ w @trisha_gee https://t.co/4xTaChncgb
— Java (@java) March 22, 2017
Остальные нововведения будут заметны и тем, кто о Java 9 пока что не задумывается. Среди них есть многое формата «приятные мелочи» — например, замена циклов на стримы и обратно улучшена, а некоторые операции с Map IDEA теперь предлагает заменять на Map.getOrDefault. И тут нам даже не надо лезть в YouTrack, чтобы понять, кто за этим стоит. Когда мы в январе брали интервью у Тагира Валеева и спросили, чего ждать от его доклада на JPoint/JBreak «Java-инспекции в IntelliJ IDEA: что может пойти не так?», он в качестве примера использовал как раз работу над инспекцией с Map.getOrDefault.
Прямо хочется теперь написать много разного кода, на котором она будет вылезать, и посмотреть, пойдёт ли что-то не так!
- Тагир ВалеевРазработчик в JetBrains, занимается статическим анализатором кода IntelliJ IDEA, инспекциями и квик-фиксами. Также он кидает патчики в OpenJDK и разрабатывает опенсорсную библиотеку StreamEx. Известен на Хабрахабре как lany, в твиттере — как @tagir_valeev.
- Rafael WinterhalterRafael works as a software consultant in Oslo, Norway. He is a proponent of static typing and a JVM enthusiast with particular interest in code instrumentation, concurrency and functional programming. Rafael blogs about software development, regularly presents at conferences and was pronounced a JavaOne Rock Star. When coding outside of his work place, he contributes to a wide range of open source projects and often works on Byte Buddy, a library for simple runtime code generation for the Java virtual machine. For his work, Rafael received a Duke's Choice award and was elected a Java Champion. @rafaelcodes