Java 9 Early Access. Установка
от aNNiMON
Менее полугода остаётся до релиза Java 9, так что, думаю, пора потихоньку изучать новшества и готовиться к изменениям.
Начнём с установки и подготовим рабочее пространство для работы с Java 9 EA.
Установка JDK9
Скачать сборку можно с официального сайта https://jdk9.java.net/download/, приняв сперва лицензию.
Обратите внимание: Java 9 следует устанавливать дополнительно, а не как замену существующей версии Java (а лучше и вовсе на виртуалку), иначе часть приложений может перестать работать.
Для Ubuntu-based систем есть возможность установки из PPA, но в этом случае мы получим Java 9 как основную версию в системе и сборка не всегда может быть самой свежей. На момент установки, на официальном сайте была сборка 140, а в репозитории 132, но это не столь важно.
В процессе установки также потребуется принять лицензию Oracle:

Либо задать автоматический выбор:
В остальном же, процесс весьма прост.
Проверка
После завершения установки, проверяем версию java и javac. Если вы не ставили Java 9 как версию по умолчанию (Windows-установщик не добавляет путь к JDK9 в PATH), то перейдите в папку bin JDK9.


В случае успеха, у обоих приложений будет версия 9-ea.
Настройка Netbeans IDE
Ночные сборки Netbeans IDE имеют встроенную поддержку Java 9. Если у вас стоит версия 8.1 или 8.2, dev-версия поставится рядом без замены настроек. Скачать последнюю сборку можно отсюда.
Запускать Netbeans IDE рекомендуется под Java 8, а JDK9 добавить как дополнительную Java-платформу (Tools - Java Platforms - Add Platform)


В Platform Javadoc укажите http://download.java.net/java/jdk9/docs/api/

В итоге мы получим JDK 9 как дополнительную платформу Java. Обратите внимание на вкладку Classes, теперь все классы JDK разбиты на модули.

Создание проекта
Проект создаётся обычным путём: New Project - Java Application. После создания, следует переключить JDK в свойствах проекта.


Теперь можно проверить, запускается ли приложение из-под Java 9:
В консоли должна появиться строка 9-ea.
А где же Jigsaw, module-info.java и, собственно, модульность?
До тех пор, пока вы не создадите файл module-info.java, NB работает в обычном режиме, открывая доступ ко всем пакетам. Как только вы создаёте module-info.java, проект будет переведён в модульный режим. Но об этом в следующий раз.
Следующая статья →Начнём с установки и подготовим рабочее пространство для работы с Java 9 EA.
Установка JDK9
Скачать сборку можно с официального сайта https://jdk9.java.net/download/, приняв сперва лицензию.
Обратите внимание: Java 9 следует устанавливать дополнительно, а не как замену существующей версии Java (а лучше и вовсе на виртуалку), иначе часть приложений может перестать работать.
Для Ubuntu-based систем есть возможность установки из PPA, но в этом случае мы получим Java 9 как основную версию в системе и сборка не всегда может быть самой свежей. На момент установки, на официальном сайте была сборка 140, а в репозитории 132, но это не столь важно.
- sudo add-apt-repository ppa:webupd8team/java
- sudo apt-get update
- sudo apt-get install oracle-java9-installer
В процессе установки также потребуется принять лицензию Oracle:


Либо задать автоматический выбор:
- echo oracle-java9-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
В остальном же, процесс весьма прост.
Проверка
После завершения установки, проверяем версию java и javac. Если вы не ставили Java 9 как версию по умолчанию (Windows-установщик не добавляет путь к JDK9 в PATH), то перейдите в папку bin JDK9.
- java -version
- javac -version


В случае успеха, у обоих приложений будет версия 9-ea.
Настройка Netbeans IDE
Ночные сборки Netbeans IDE имеют встроенную поддержку Java 9. Если у вас стоит версия 8.1 или 8.2, dev-версия поставится рядом без замены настроек. Скачать последнюю сборку можно отсюда.
Запускать Netbeans IDE рекомендуется под Java 8, а JDK9 добавить как дополнительную Java-платформу (Tools - Java Platforms - Add Platform)


В Platform Javadoc укажите http://download.java.net/java/jdk9/docs/api/

В итоге мы получим JDK 9 как дополнительную платформу Java. Обратите внимание на вкладку Classes, теперь все классы JDK разбиты на модули.

Создание проекта
Проект создаётся обычным путём: New Project - Java Application. После создания, следует переключить JDK в свойствах проекта.


Теперь можно проверить, запускается ли приложение из-под Java 9:
- package com.example.java9;
- public final class Main {
- public static void main(String[] args) {
- System.out.println(System.getProperty("java.version"));
- }
- }
А где же Jigsaw, module-info.java и, собственно, модульность?
До тех пор, пока вы не создадите файл module-info.java, NB работает в обычном режиме, открывая доступ ко всем пакетам. Как только вы создаёте module-info.java, проект будет переведён в модульный режим. Но об этом в следующий раз.
Project Jigsaw. Модульность