В ходе повторного голосования исполнительный комитет JCP (Java Community Process) одобрил принятие спецификации JSR 376 (Java Platform Module System), в рамках которой развивалось ключевое улучшение платформы Java 9. JSR 376 отражает изменения, подготовленные в рамках проекта Jigsaw, и предлагает принципиально новые для Java средства разбиения программ и JDK на модули. После корректировки графика подготовки Java 9, попыток решить спорные вопросы и переноса релиза на с 27 июля на 21 сентября, 24 участника комитета высказались за принятие JSR 376. Таким образом теперь больше ничего не мешает осенью выпустить Java 9. Напомним, что изначально релиз JDK 9 был запланирован на 22 сентября 2016 года, а затем перенесён на 23 марта 2017 года, после чего сдвинут ещё на 4 месяца до 27 июля 2017 года. Компания Red Hat, которая выступала против модульной архитектуры Jigsaw, воздержалась при голосовании, отметив позитивный прогресс в достижении консенуса в сообществе. Red Hat продолжает считать, что Jigsaw может
Компания Oracle в третий раз переносит релиз Java 9. В соответствии с новым планом выпуск переносится с 27 июля на 21 сентября из-за разногласий в исполнительном комитете JCP (Java Community Process), касающихся внедрения новой модульной архитектуры Jigsaw, которая, по мнению Red Hat, может привести к нарушению работы уже существующих приложений, расколу экосистемы и фрагментации сообщества. Компания Oracle не отказывается от Jigsaw и надеется за два дополнительных месяца устранить отмеченные комитетом недостатки. Напомним, что изначально релиз JDK 9 был запланирован на 22 сентября 2016 года, а затем перенесён на 23 марта 2017 года, после чего сдвинут ещё на 4 месяца до 27 июля 2017 года. Основные новшества JDK 9: Поддержка модульной структуры, реорганизация кода JDK в модули, усовершенствование системы сборки для поддержки компиляции модулей, раздельная обработка модулей на этапе сборки. Реструктуризация бинарных образов JDK и JRE для поддержки модулей и увеличения производительности, безопасности и
Исполнительные комитет JCP (Java Community Process) отклонил принятие спецификации JSR 376 (Java Platform Module System), в рамках которой развивалось ключевое улучшение платформы Java 9, релиз которой запланирован на 27 июля 2017 года. JSR 376 отражает изменения, подготовленные в рамках проекта Jigsaw, и предлагает принципиально новые для Java средства разбиения программ и JDK на модули. Против добавление в Java средств для разбиения на модули проглосовало 13 из 23 активных участников комитета. Среди проголосовавших против: IBM, Red Hat, Eclipse Foundation, Hewlett Packard Enterprise, SAP и Twitter. Из участников, голосовавших за принятие JSR 376, можно отметить Intel, Fujitsu, Goldman Sachs, Oracle. В течение 30 дней планируется выставить на голосование обновлённый вариант спецификации, в случае одобрения которого ещё удастся выпустить Java 9 в срок. По мнению сторонников проекта Jigsaw разбиение кода платформы Java на модули упростит создание, сопровождение и распространение больших приложений,
Выпущены новые версии фреймворка Redisson, основанного на Redis и представляющего полный набор Java-объектов и сервисов, которые необходимы для создания распределенных приложений. Код проекта написан на языке Java и поставляется под лицензией Apache 2.0. Redisson может работать с любыми конфигурациями Redis: Master/Slave, Sentinel, Cluster, а также в облачной инфраструктуре AWS Elasticache и Azure Redis Cache. Предоставляется более 30 распределенных объектов, коллекций, локов и сервисов. Также есть интеграция с Tomcat, Hibernate и Spring. В версиях 2.9.0 и 3.4.0 появилась реализация фреймворка MapReduce для всех коллекций типа Map, List и Set.
Выпущены новые версии фреймворка Redisson, основанного на Redis и представляющего полный набор Java-объектов и сервисов, которые необходимы для создания распределенных приложений. В рамках проекта развиваются две ветки: 2.x.x - поддерживает JDK 1.6+ и Android, 3.x.x - поддерживает JDK 1.8+. Код проекта написан на языке Java и поставляется под лицензией Apache 2.0. Redisson может работать с любыми конфигурациями Redis: Master/Slave, Sentinel, Cluster, а также в облачной инфраструктуре AWS Elasticache и Azure Redis Cache. Среди объектов и сервисов, которые реализованы поверх сервера Redis: BitSet, Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong, CountDownLatch, Publish / Subscribe, Bloom filter, Remote service, Spring cache, Executor service, Live Object service, Scheduler service и так далее. Также предоставлена реализацию Tomcat Session Manager и Spring Session. В версиях 2.8.0 и 3.3.0 появились очереди с поддержкой приоритетизации, а также map
Представлен проект PurpleJS, в рамках которого развивается похожий на Node.js фреймворк, позволяющий создавать серверные приложения на языке JavaScript. Ключевой особенностью PurpleJS является использование виртуальной машины Java (JVM) для выполнения приложений, что позволяет добиться неплохой производительности и предоставить возможность интеграции с приложениями и библиотеками на языке Java. Код проекта написан на языке Java и распространяется под лицензией Apache 2.0. PurpleJS позволяет создавать быстрые и лёгковесные серверные приложения на языке JavaScript или комбинируя JavaScript с Java, без применения модели асинхронного программирования, свойственной Node.js. Для сборки проектов используется инструментарий Gradle. Возможности PurpleJS: Запуск проектов на JavaScript поверх JVM; Создание многопоточных приложений на JavaScript; Создание серверных приложений на JavaScript, имеющих доступ к библиотекам Java; Построение изоморфных приложений, в которых один код используется как на стороне
Компания Oracle представила плановый выпуск обновлений своих продуктов (Critical Patch Update), нацеленный на устранение критических проблем и уязвимостей. В октябрьском обновлении в сумме устранено 253 уязвимости. В выпусках Java SE 8u111 и 8u112 устранено 7 проблем с безопасностью, которые могут быть эксплуатированы удалённо без проведения аутентификации. Трём уязвимостям присвоен критический уровень опасности (CVSS Score больше 9). Все проблемы проявляются только на клиентских системах (запуск в браузере Java Web Start и Java-апплеты). Выпуск Java SE 8u112 вышел одновременно с 8u111 и отличается не только устранением уязвимостей, но и исправлением ошибок, не связанных с безопасностью. Из грядущих изменений отмечается прекращение поддержки MD5 для формирования цифровых подписей для JAR-файлов, начиная с января 2017 года все JAR-файлы с MD5 будут считаться неподписанными. Кроме проблем в Java SE, наличие уязвимостей обнародовано и в других продуктах Oracle, в том числе: 32 уязвимости в MySQL
Компания Oracle в очередной раз не укладывается в сроки подготовки JDK 9. Если изначально релиз JDK 9 был запланирован на 22 сентября 2016 года, а затем перенесён на 23 марта 2017 года, то теперь разработчики просят сдвинуть релиз ещё на 4 месяца, т.е. смогут выпустить его только в июле 2017 года. Задержка главным образом связана с потребностью в дополнительном времени на доработку и тестирование реализации системы Jigsaw, предлагающей принципиально новые для Java средства разбиения программ и JDK на модули. Основные новшества JDK 9: Поддержка модульной структуры, реорганизация кода JDK в модули, усовершенствование системы сборки для поддержки компиляции модулей, раздельная обработка модулей на этапе сборки. Реструктуризация структуры бинарных образов JDK и JRE для поддержки модулей и увеличения производительности, безопасности и удобства сопровождения. Легковесный JSON API для обработки и генерации данных в формате JSON; Новый API HTTP-клиент, идущий на замену HttpURLConnection и поддерживающий
Эндрю Хейли (Andrew Haley), отвечающий за поддержку Java в GCC, возглавляющий ряд проектов OpenJDK и представляющий компанию Red Hat в совете OpenJDK, опубликовал набор патчей для полного удаления компилятора GCJ (GNU Compiler For Java) из состава GCC. Патчи предложены для финального рецензирования и если они будут одобрены, GCC 7 выйдет без GCJ. Инициатива по удалению GCJ стартовала ещё в 2013 году и связана с запущенным состоянием GCJ, который много лет не развивается и содержит ряд проблем, мешающих применению GCJ на практике. Кроме того, смысл существования GCJ находится под вопросом, так как развитие открытых компонентов Java переместилось в проект OpenJDK, который также распространяется под лицензией GPL.
Компания Oracle представила плановый выпуск обновлений своих продуктов, в которых в сумме устранено 276 уязвимостей. В выпусках Java SE 8u101 и 8u102 устранено 13 проблем с безопасностью, которые могут быть эксплуатированы удалённо без проведения аутентификации. Четырём уязвимостям присвоен уровень опасности (CVSS Score) больше 9. Десять проблем проявляются только на клиентских системах (запуск в браузере Java Web Start и Java-апплеты), а три затрагивают как клиентов, так и серверные конфигурации Java. Выпуск Java SE 8u102 вышел одновременно с 8u101 и отличается не только устранением уязвимостей, но и исправлением ошибок, не связанных с безопасностью. Кроме проблем в Java SE, наличие уязвимостей обнародовано и в других продуктах Oracle, в том числе: 22 уязвимости в MySQL (максимальный уровень опасности 8.1). Проблемы устранены в выпусках MySQL Community Server 5.7.12, 5.6.30 и 5.5.49. 7 уязвимостей в Solaris (максимальный уровень опасности 6.5). Уязвимости устранены в ядре, системе верифицированной