HotSpot의 반격: JEP 544, GraalVM 시작 성능 독점의 끝인가?
HotSpot JVM에 흥미진진한 시대가 찾아왔습니다: JEP 544: Ahead-of-Time Code Compilation이 Java 28용으로 방금 제안되었습니다. 이를 통해 HotSpot AOT 캐시가 GraalVM에 필적하는 시작 성능을 확보하되, GraalVM의 그런 고충은 하나도 겪지 않아도 될 것으로 기대됩니다. 다만 AOT 캐시를 학습시키는 것은 GraalVM으로 사전 컴파일하는 것과는 다르기 때문에, 실제로는 어느 쪽이 어떻게 비교될까요?SBOM이 15개월 후 의무화됩니다. 당신의 SBOM은 아마 잘못되어 있을 것입니다.
2027년 12월 11일부터 EU 사이버 복원력법(Cyber Resilience Act)의 SBOM 의무 사항이 적용됩니다. 즉, EU에서 소프트웨어를 배포하려면 곧 SBOM이 필요해집니다. EU만의 현상이 아니라, 이러한 선언적 접근 방식으로 공급망 보안을 강제하는 것은 전 세계적인 추세입니다. 미국은 2021년부터 연방 소프트웨어 공급업체에 SBOM을 요구해 왔고, CISA/NSA/FBI는 올해 7월 업데이트된 SBOM 최소 요소를 발표했습니다.
SBOM을 정확하게 작성하는 일은 쉽지 않으며, 소프트웨어와 함께 인스톨러를 배포하는 경우에는 한층 더 어려워집니다. 이제 어떻게 해야 할까요? 함께 살펴보겠습니다.
Migrating to install4j 12
In most cases, migrating to install4j 12 usually just involves opening and saving your project with the install4j 12 IDE. Nevertheless, there are some considerations with respect to backward compatibility and some behavioral changes.
With Temurin 24.0.2, Adoptium JDKs can again be modularized by install4j
This year we had some dramatic moments starting in April with the release of Temurin 24.0.0 from Adoptium, our default JDK bundle provider. In this blog post we celebrate the happy conclusion of this incident.
JEP 493 follow-up: install4j 11.0.4 is ready for separate JMOD bundles in Eclipse Temurin 24.0.2
Two months ago, I wrote about how JEP 493 threatened cross-platform JRE bundle creation by allowing JDK vendors to omit JMOD files from their distributions. Without JMOD files, tools like install4j cannot build cross-platform runtime images. This had the potential to seriously disrupt functionality for our users.
Caching auto-provisioned install4j distributions in CI pipelines
Starting with install4j 11.0, integrating install4j into your build system has become much easier: The Gradle, Maven, and Ant plugins can now auto-provision the install4j distribution. This means the plugins will download and cache the appropriate install4j version automatically, so you no longer need to install install4j manually.
Cross-platform JRE bundle creation under threat from JEP 493
One of the most valuable capabilities introduced with the Java module system in Java 9 is its support for creating custom runtime
images with jlink. Developers can include only the modules they need, resulting in lightweight JRE bundles tailored to the
requirements of their applications. Using the --module-path option, it has even been possible to generate those runtime
images for different operating systems from a single host machine.
With Java 24, JEP 493 introduces a change that significantly impacts this workflow.
JDK vendors can now configure builds without .jmod files, as jlink can optionally extract the required resources
from the lib/modules jimage file. While this change reduces the size of the JDK by about 25%, it also removes critical support
for cross-platform linking.
Improvements for macOS App Store submissions in install4j 11.0.2
install4j 11.0.2 introduces several new features to simplify macOS App Store submissions, including automated entitlement handling for TestFlight, improved support for local testing with development provisioning profiles, and dynamic bundle versioning for easier resubmission of builds.
Migrating to install4j 11
In most cases, migrating to install4j 11 usually just involves opening and saving your project with the install4j 11 IDE. Nevertheless, there are some considerations with respect to backward compatibility and some behavioral changes.
Namespace awareness of XML actions in install4j
This post explains an exceptional backward-incompatibility in the install4j 10.0.9 release. This was necessary due to a change in install4j 10.0.8 that was intended to fix the corruption of namespaced XML documents by modifying XML actions.