1. Бинарные сборки на Гитхабе.
2. ЕСТЬ РЕСТ АПИ!!! bell-sw.com Не надо парсить html Амазона, чтобы вытащить последнюю версию Corretto. Curl'у не надо подсовывать куки, чтобы дёрнуть jdk с oracle.com.
3. Чуваки из СПб, а значит ответят по-русски (с ингришем у меня всё ещё плохо).
4. Репы для deb и rpm: bell-sw.com Http тоже не отрубили, т.е. apt-cacher-ng будет чувствовать себя норм.
5. В jdk-full воткнут и jre и jdk и javafx! 1 msi для всего!
6. А ещё у них в api есть "latestLTS".
Ruby — то понятно. Такая же хуета, как и JS, только с меньшим количеством скобочек и без фронтэнда.
Java — не так уж сильно отличается от привычного мне TypeScript, во всяком случае, те простейшие вещи, которые на ней довелось делать. Но удручает другое. Казалось бы, язык строжайше типизированный, все дела. Но даже здесь наши доблестные шестиконечные девелоперы умудрились налажать. Набор обязательных параметров передается в метод, выполняющий платёжную транзакцию, не через объект какого-то класса, а через Map<String, Object>, а потом уже нужные параметры вытягиваются в самом методе из этого мапа через get() и кастуются к строке или к целому. Ебать, пиздец, да? Платёжная транзакция, если чо. Причём, мне даже понятно, как они к этому пришли. Сначала было два платёжных шлюза. Создали базовый класс и по наследнику на каждый... скажем так, драйвер конкретного шлюза. Окей. Но потом, когда проект вырос, добавилось ещё пять платёжных шлюзов, а сигнатуры абстрактного метода confirmPayment() стало явно не хватать. Ну они и не стали заморачиваться, добавили параметр metadata — эдакую помойку параметров, в которую можно невозбранно пихать всё, что угодно. Я варюся, капец. Текучая абстракция, как есть, бля буду.
С далёких не пришедшие полей,
Не в землю нашу полегли когда-то,
А превратились в белых червырей.
Ползёт себе по жопе глист весёлый.
Ползёт в тумане на исходе дня.
Но, может быть, на этой жопе голой
Отыщется местечко для меня?
A key limitation of the JDBC driver is that it cannot receive asynchronous notifications and must poll the backend to check if any notifications were issued.
cr.openjdk.java.net они и до java добрались
habr.com
напоминает RHEL и CentOS, в том плане что CentOS это RHEL для бедных.
Полный список различий между Open JDK и Oracle JDKначиная с 11й версии
blogs.oracle.com
напоминает RHEL и CentOS, в том плане что CentOS это RHEL для бедных.
Полный список различий между Open JDK и Oracle JDKначиная с 11й версии
blogs.oracle.com
Время ли обновлять ноут? А сколько грузяццо ваши проекты?
(основной проект у меня нонче в Jupyter на удаленном компе, и мне вообще идея почти по сараю).
java -XX:+UseShenandoahGC -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b15)
OpenJDK 64-Bit Server VM (build 25.181-b15, mixed mode)
Л — Легковесность.
(Жаба всех вас переживет) (Пишу на Дарте)
Это шо ж творится? Они долбанулись.
Со всем. Конфиги, настройки, ключи — всё улетело нахрен. Какие то доки, проекты, сорцы....
Жалко только ключи и настройки. Документация вся в иторнетах, почта там же. проекты — там же. Книги — их тьма в телеге и на трекерах... А вот ключи и настройки, вот этого вот нет, так что всё настраивтаь таки заново.
Особый привет глючным либам в недрах которых могут быть shutDownHook с удалением рабочего каталога!!
oracle.com на login.oracle.com где нужно сделать Sign in или create account.
Уебаны не дают скачать JRE 7 перенаправля с
medium.com — в java 10 появятся local variable type, можно будет писать var i = "Hello";
Допилил CheerpJ и JGNAT друг под друга
Посмотреть можно здесь
Пока что вижу: насчёт многозадачности — правда. Я думал, это фишка простого Cheerp, а раз в простом Cheerp нету асинхронизатора, то это всё может работать только на SharedArrayBuffer и не везде. Но нет. Планировщик находится в loader.js от CheerpJ и, насколько я могу судить, работает. В том числе можно динамически подгружать классы, и они грузятся (с поддержкой AOT) по сети, и исполнение зелёного потока продолжается с момента остановки. EmScripten так не умеет, там только синхронным XHR можно с файловой системой работать, и только в Web Workers, в общем, без асинхронизатора это ни о чём.
Вместе со Swing там, похоже, даже движок текста свой подгружается. Антиалиасинг явно получше, чем в браузере. Но время запуска будь здоров. Хотя большая часть сейчас зависит от производителя. Если они там у себя что-нибудь подкрутят, васм внедрят, например, ведь Cheerp умеет, то есть, куда ужаться. Просто начинать с тем, что есть, а оно само будет улучшаться.
Посмотреть можно здесь
Пока что вижу: насчёт многозадачности — правда. Я думал, это фишка простого Cheerp, а раз в простом Cheerp нету асинхронизатора, то это всё может работать только на SharedArrayBuffer и не везде. Но нет. Планировщик находится в loader.js от CheerpJ и, насколько я могу судить, работает. В том числе можно динамически подгружать классы, и они грузятся (с поддержкой AOT) по сети, и исполнение зелёного потока продолжается с момента остановки. EmScripten так не умеет, там только синхронным XHR можно с файловой системой работать, и только в Web Workers, в общем, без асинхронизатора это ни о чём.
Вместе со Swing там, похоже, даже движок текста свой подгружается. Антиалиасинг явно получше, чем в браузере. Но время запуска будь здоров. Хотя большая часть сейчас зависит от производителя. Если они там у себя что-нибудь подкрутят, васм внедрят, например, ведь Cheerp умеет, то есть, куда ужаться. Просто начинать с тем, что есть, а оно само будет улучшаться.
Нет, нельзя давать программистам регистрозависимость. Если неприятность может случиться, она случится.
Bad class file: version 52.0 not supported
Да что ж вам неймётся-то по версиям скакать. Ну что не сидится на одной. Вот чем хорош COM и чем плоха Java, в COM совместимость десятилетиями держится, а тут каких-то несчастных четыре года отделяет, и уже инструментарий начинает отваливаться. В книге «Putting Metaclasses to Work» симуляция была специально реализована на Java, чтобы, как пишет автор, как можно надольше сохранить. В итоге компилятор DirectToSOM C++, библиотека SOM и прочее PE/COFF'ное запускается на современной Windows 10, а симуляция PMtW на современной JVM — нет. И на не очень современной 1.5 — тоже. Вообще надо какую-то древнюю находить, чтоб подошло тютелька в тютельку. Знал бы автор, как жестоко будут насмехаться над его потугами производители. Начиналось за здравие, столько надежд было.
И в Delphi CORBA IDL парсится утилитой не на Delphi, транслируемой в, как показывает практика, долгоживущий PE/COFF, а на Java, и тоже там совместимую версию надо постараться подобрать, собственно, почему эту фичу кроме особенно заинтересованных никто не смог увидеть в действии.
Предполагаю, что так пагубно влияет общая версия формата для интерфейса и реализации. Собственно, и нет разделения на интерфейс и реализацию. Новые фичи не могут просто сидеть и не высовываться в новых секциях и новых опкодах, на которые не любой инструментарий будет смотреть, им обязательно надо вылезать на самый верх, в общий номер формата, и там всё ломать.
Что бы ему насоветовать? Так чтобы от основ: поиск, сортировка пузырьком, ...
Но так чтобы было понятно — берём эту ide, сюда пишем, так запускаем.
Я как-то бегло нагуглил какие-то книжонки по java. Ни одна мне не понравилась.
Думал ему линк на Кнута дать, чтоб по алгоритмам подтянуть, но там такая скука.
В общем рекоменд, если есть чо.
javacodegeeks.com — хотят человеческий switch
CheerpJ как я заметил, уже вышел из закрытых альфа-тестов и находится в бете.
Те же разработчики, что делают Cheerp, транслятор C++ в JavaScript/Asm.js/WASM, делают CheerpJ для Java. Позиционируется он как нормально портированная Java. Никаких ограничений, как в GWT. Поддерживается байт-код. Поддерживаются Swing и Java-апплеты как с оффлайн конвертацией, так и в виде шима. Есть плагин для Хрома.
Те же разработчики, что делают Cheerp, транслятор C++ в JavaScript/Asm.js/WASM, делают CheerpJ для Java. Позиционируется он как нормально портированная Java. Никаких ограничений, как в GWT. Поддерживается байт-код. Поддерживаются Swing и Java-апплеты как с оффлайн конвертацией, так и в виде шима. Есть плагин для Хрома.
#2891656). Ладно, посмотрим, какие есть ещё варианты. У нас же мостов для Java есть целых три штуки. А как там парсинг сделан?
Первым в голову приходит Rococoa. И там парсинг не сделан никак. Согласно документации, надо писать привязки вручную.
Про Apple Cocoa-Java известно мало, потому что он с закрытым кодом, но оттуда можно взять ручные коррекции, написанные прямо в Apple. Похоже, полновесного парсера типа GCC там нет. clang в те времена не было.
Порадовал GNUStep JIGS. Там есть и парсер, и ручные коррекции.
Думал, в Swift будут утилиты на Swift, а оказалось, что нет (см. Первым в голову приходит Rococoa. И там парсинг не сделан никак. Согласно документации, надо писать привязки вручную.
Про Apple Cocoa-Java известно мало, потому что он с закрытым кодом, но оттуда можно взять ручные коррекции, написанные прямо в Apple. Похоже, полновесного парсера типа GCC там нет. clang в те времена не было.
Порадовал GNUStep JIGS. Там есть и парсер, и ручные коррекции.
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000007b3b80000, 64487424, 0) failed; error='Невозможно выделить память' (errno=12)
Ubuntu 16.04
Java 1.8. На 1.7 та же фигня
Памяти 16гиг. Свопа нет.
Реально памяти не хватает?
String name = request.getParameter("name") || "Anonymous";