Вообще да, странно, на арче openjdk8 собирается без всяких патчей:
Скрытый текст
build() {
cd jdk8u-${_repo_ver}
unset JAVA_HOME
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1346
export MAKEFLAGS=${MAKEFLAGS/-j*}
# We filter out -O flags so that the optimization of HotSpot is not lowered from O3 to O2
export CFLAGS="${CFLAGS//-O2/-O3} ${CPPFLAGS} -Wno-error=deprecated-declarations -Wno-error=stringop-overflow= -Wno-error=return-type -Wno-error=cpp -fno-lifetime-dse -fno-delete-null-pointer-checks"
export CXXFLAGS="${CXXFLAGS} ${CPPFLAGS}"
install -d -m 755 "${srcdir}/${_prefix}/"
sh configure \
--prefix="${srcdir}/${_prefix}" \
--with-update-version="${_jdk_update}" \
--with-build-number="b${_jdk_build}" \
--with-milestone="fcs" \
--enable-unlimited-crypto \
--with-zlib=system \
--with-extra-cflags="${CFLAGS}" \
--with-extra-cxxflags="${CXXFLAGS}" \
--with-extra-ldflags="${LDFLAGS}"
# TODO OpenJDK does not want last version of giflib (add 'giflib' as dependency once fixed)
#--with-giflib=system \
# These help to debug builds: LOG=trace HOTSPOT_BUILD_JOBS=1
# Without 'DEBUG_BINARIES', i686 won't build: http://mail.openjdk.java.net/pipermail/core-libs-dev/2013-July/019203.html
make
make docs
# FIXME sadly 'DESTDIR' is not used here!
make install
cd ../${_imgdir}
# A lot of build stuff were directly taken from
# http://pkgs.fedoraproject.org/cgit/java-1.8.0-openjdk.git/tree/java-1.8.0-openjdk.spec
# http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1437
find . -iname '*.jar' -exec chmod ugo+r {} \;
chmod ugo+r lib/ct.sym
# remove redundant *diz and *debuginfo files
find . -iname '*.diz' -exec rm {} \;
find . -iname '*.debuginfo' -exec rm {} \;
}
Если кратко и без воды — если у вас есть рекурсивный dns сервер и на нём включена валидация dnssec — добавьте второй ключ в доверенные. Вот, например, для dnsmasq оба ключа:
prok@wendy:~$ cat /usr/share/dnsmasq-base/trust-anchors.conf
# The root DNSSEC trust anchor, valid as at 10/02/2017
# Note that this is a DS record (ie a hash of the root Zone Signing Key)
# If was downloaded from https://data.iana.org/root-anchors/root-anchors.xml
trust-anchor=.,19036,8,2,49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5
trust-anchor=.,20326,8,2,E06D44B80B8F1D39A95C0B0D7C65D08458E880409BBC683457104237C7F8EC8D
Просто у Kotlin так сказать есть «дефолтный сервер» — это ktor. Для чистой Java встаёт вопрос «а что собсно у нас будет запросы обрабатывать?». Вот пример с com.sun.net.httpserver:
public class Main {
public static void main(String[] args) throws Exception {
HttpServer server = HttpServer.create(new InetSocketAddress(8080), 0);
server.createContext("/", (t) => {
String response = "Hello World".getBytes();
t.sendResponseHeaders(200, response.length);
OutputStream os = t.getResponseBody();
os.write(response);
os.close();
});
server.start();
}
}
Можно наколдовать с более удобным api, взять более удобную библиотеку, /etc…
И… не буду говорить о Maven. Это — просто кошмарный инструмент.
Ну не знаю… Я как поглядел на webpack/gulp/babel/flow/ts/чотамещё у меня возникла только одна мысль — мамочка роди меня обратно.
Что сложного в управлении пакетами maven? Аналогично указываешь имя пакета (ну и его группу), version constraints там тоже есть — с этой точки всё аналогично npm/yarn, в чём трудности?
Используют, но в момент suspend'инга корутина сохраняет весь свой стек в объект и разворачивает его обратно в момент resume. Поэтому корутинам и не важно, в каком потоке они выполняются — всё их состояние хранится в обычном объекте.
Это, конечно, похвально, что вы знаете про IEEE 754. Но модуль (или остаток, называйте как хотите) не применим на эти бесконечности — результат NaN. В любом случае даже IEEE754 не может вместить в себя все возможные числа — с фиксированным числом бит это просто невозможно.
LE выдаёт сертификаты не только посредством HTTP запроса, он может опрашивать DNS и HTTP сервер в этом случае вообще не нужен (да даже машины могут быть разные, выписывать сертификат в одном месте, а использовать в другом). Гуглите ACME DNS-01
Спасибо за плагин! У меня сейчас статус DNS серверов показывается как stacked, думаю с этим плагином можно сделать покрасивше.
Если кратко и без воды — если у вас есть рекурсивный dns сервер и на нём включена валидация dnssec — добавьте второй ключ в доверенные. Вот, например, для dnsmasq оба ключа:
Ну дык и в
kotlinx.serializationможно игнорировать "лишние" поля, и default там замечательно прописываются. В чём проблема?Можно наколдовать с более удобным api, взять более удобную библиотеку, /etc…
Это не в «джаве», а в JavaEE. На SE тоже можно уложиться тупо кодом:
На Java будет чуть подлинее конечно (нужно класс объявить, public static void main, /etc), но тоже довольно коротко.
Ну не знаю… Я как поглядел на webpack/gulp/babel/flow/ts/чотамещё у меня возникла только одна мысль — мамочка роди меня обратно.
Что сложного в управлении пакетами maven? Аналогично указываешь имя пакета (ну и его группу), version constraints там тоже есть — с этой точки всё аналогично npm/yarn, в чём трудности?
Бесконечность не помещается в фиксированное количество бит, так что не бесконечность.
[/зануда mode]