Рубрика «Jigsaw»

В этой статье я хотел бы рассказать, как быстро и просто сделать каркас приложения на Java с поддержкой динамической загрузки плагинов. Читателю наверняка сразу в голову придёт, что такая задача уже давно решена, и можно просто использовать готовые фреймворки или написать свой загрузчик классов, но в предлагаемом мною решении ничего этого не потребуется:

  • Нам не понадобятся специальные библиотеки или фреймворки (OSGi, Guice и т.п.)
  • Мы не будем использовать парсинг байткода с помощью ASM и подобных библиотек.
  • Не будем писать свой загрузчик классов.
  • Не будем использовать рефлексию и аннотации.
  • Не понадобится возня с classpath для поиска плагинов. Мы вообще не будем трогать classpath.
  • Также мы не будем использовать XML, YAML или какие-либо другие декларативные языки для описания точек расширений (extension point’ов в плагинах).

Однако всё же есть одно требование — такое решение будет работать только на Java 9 или выше. Потому что оно будет основано на модулях и сервисах.
Читать полностью »

В четверг, 4 октября, на площадке Deworkacy (ул. Большая Полянка, д.2/10, стр 1) мы проведём митап для backend-разработчиков.

4 октября, Москва — Backend Stories 2.0 - 1

Начинаем в 19.00, подробности — под катом.
Читать полностью »

Добрый вечер, коллеги. Ровно месяц назад мы получили контракт на перевод книги "Modern Java" от издательства Manning, которая должна стать одной из наших самых заметных новинок в будущем году. Проблема «Modern» и «Legacy» в Java настолько остра, что необходимость такой книги довольно назрела. Масштабы бедствия и способы решения возникающих проблем в Java 9 кратко описаны в статье Уэйна Ситрина (Wayne Citrin), перевод которой мы и хотим вам сегодня предложить.
Читать полностью »

Здравствуй. Как ты помнишь, недавно произошёл официальный релиз Java 10. Учитывая, что практически все сейчас используют преимущественно 8-ку, с выходом 10-ки нас ждут такие вкусности как модульность (вошла в 9-ку) и local variable type inference. Звучит неплохо, можно попробовать поэкспериментировать с переносом какого-нибудь существующего проекта на 10-ку.

image

О том, какие разновидности боли ждут нас, можно узнать под катом.
Читать полностью »

в 14:37, , рубрики: java, java9, jdk9, Jigsaw, JPont2017

Всем доброго времени суток. В ноябре 2017 в Санкт-Петербурге прошло одно из самых примечательных событий года для отечественных Java-разработчиков: конференция Joker. На конференции было озвучено много тем, такие как GC, Concurrency, Spring Boot, JUnit 5 и другие, презентации по которым вы можете найти в открытом доступе на сайте конференции. Перечислять все смысла нет, так как по каждому топику можно составить отдельную статью с примерами и выдержками. Поэтому остановимся на главном.

Основной темой были нововведения в Java 9: ей посвятили аж две лекции, по модулям, и по всему остальному. Саму девятку Oracle изначально планировали выпустить еще в середине лета 2016, однако релиз был перенесен сначала на полгода, а потом и вовсе на вторую половину 2017. И вот, 21 сентября 2017, выход девятки состоялся.

Данная статья представлена именно как обзор новоиспеченной джавы, так как тема сама по себе большая, требующая целого цикла статей, которые, несомненно, будут при поступлении просьб от трудящихся.

Итак, по порядку. Как говорилось выше, нововведения в девятке можно разделить на два блока: общий и модульный. Придерживаясь хронологии Joker, начнем с первого.

1. Появление литералов в коллекциях

На самом деле литералы в коллекциях можно использовать с 7 версии, никто не запрещает выполнить следующее, если у вас установлен ProjectCoin:
Читать полностью »

Через четыре месяца планируется выпустить Java 9 (надеемся, что переносов сроков больше не произойдёт). Ничто не мешает уже сейчас на предварительной версии проверить, насколько соответствует ожиданиям главная возможность новой версии — модульность (проект Jigsaw).

Уменьшение размера дистрибутива в Java 9 - 1

В статье описываются изменения, требуемые для сборки дистрибутива с поддержкой модульности. Сборка дистрибутива производится в операционных системах Windows, macOS и Linux.
Читать полностью »

Завершающей этот год на jug.msk.ru стала встреча с Иваном Крыловым (Azul Systems), состоявшаяся 15 декабря 2016 года. Темой разговора стала давно ожидаемая Java 9.

Разговор про Java 9 с Иваном Крыловым на jug.msk.ru - 1
Читать полностью »

Зловред удаляет файлы раз в час и при попытках перезагрузить ПК

Криптовымогатель Jigsaw играет с пользователем, как персонаж фильма «Пила» (+ инструкция по обезвреживанию) - 1

Зловредных программ, угрожающих сохранности данных пользователя, становится все больше. Не успели решить проблему с криптовымогателем Petya, шифрующим жесткий диск пользователя вместо отдельных файлов, как появилось еще одно ransomware — криптовымогатель Jigsaw. Это ПО не просто шифрует файлы пользователя и требует выкуп за их дешифровку. Каждые 60 минут удаляется один файл пользователя, также данные уничтожаются вымогателем и при попытке перезагрузить ПК. Через некоторое время ежечасная «экзекуция» затрагивает уже не один, а больше файлов. При перезагрузке же удаляется не один и не два файла, а сразу тысяча.

Все это очень сильно действует на пользователя, и тот, в большинстве случаев, предпочитает заплатить. При этом на экране выдается инструкция о том, сколько нужно заплатить (биткоин-эквивалент $150) и где можно взять биткоины для оплаты «выкупа». Уже страшно? В общем-то, все это может подействовать и на технически подготовленного пользователя… Но выход есть — как и в случае с Petya, нашлись пользователи, которые научились обезвреживать ransomware. Теперь эти пользователи делятся опытом с другими.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js