<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Java on</title><link>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/tags/java/</link><description>Recent content in Java on</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>Copyright (c) 2023 Chainguard</copyright><lastBuildDate>Thu, 02 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/tags/java/index.xml" rel="self" type="application/rss+xml"/><item><title>Chainguard Libraries for Java overview</title><link>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/overview/</link><pubDate>Tue, 25 Mar 2025 08:04:00 +0000</pubDate><guid>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/overview/</guid><description>&lt;p&gt;Chainguard Libraries for Java provides enhanced security for the Java ecosystem by rebuilding dependencies from Maven Central and other common repositories with the latest patches and comprehensive supply chain protection. This service addresses critical vulnerabilities in the vast Java/JVM ecosystem that spans hundreds of projects from organizations like the Apache Software Foundation, Eclipse Foundation, and numerous independent maintainers.&lt;/p&gt;
&lt;p&gt;Chainguard Libraries for Java provides access to all open source libraries
commonly used. New releases of common libraries or artifacts requested by
customers are added to the growing index by an automated system. The number of
included libraries continues to grow. These artifacts are accessible through the
&lt;a href="https://edu.chainguard.dev/chainguard/libraries/chainguard-repository/"&gt;Chainguard Repository&lt;/a&gt;,
a single endpoint for package retrieval that supports configurable security
policies for both Chainguard-built and upstream packages.&lt;/p&gt;</description></item><item><title>Global configuration</title><link>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/</link><pubDate>Tue, 25 Mar 2025 08:04:00 +0000</pubDate><guid>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/</guid><description>&lt;p&gt;Java and JVM library consumption in a large organization is typically managed by
a repository manager. Commonly used repository manager applications are
&lt;a href="https://cloudsmith.com/"&gt;Cloudsmith&lt;/a&gt;, &lt;a href="https://cloud.google.com/artifact-registry/docs"&gt;Google Artifact Registry&lt;/a&gt;, &lt;a href="https://jfrog.com/artifactory/"&gt;JFrog
Artifactory&lt;/a&gt;, and &lt;a href="https://www.sonatype.com/products/sonatype-nexus-repository"&gt;Sonatype Nexus
Repository&lt;/a&gt;. The
repository manager acts as a single point of access for developers and
development tools to retrieve the required libraries.&lt;/p&gt;
&lt;p&gt;The recommended approach is to use the &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/overview/#upstream-fallback-and-controls"&gt;upstream
fallback&lt;/a&gt;
feature of Chainguard Repository, which allows you to configure your repository
manager with a single upstream pointed at &lt;code&gt;https://libraries.cgr.dev/java/&lt;/code&gt; without a separate fallback to Maven Central. The
Chainguard Repository handles fallback and policy enforcement; your repository
manager handles local caching and access control. Chainguard retrieves
packages from the public Maven Central repository on your behalf when upstream
fallback is enabled. This includes protections such as malware scanning and a
cooldown period for newly published packages.&lt;/p&gt;</description></item><item><title>Build configuration</title><link>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/build-configuration/</link><pubDate>Tue, 25 Mar 2025 08:04:00 +0000</pubDate><guid>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/build-configuration/</guid><description>&lt;p&gt;The configuration for the use of Chainguard Libraries depends on your build
tools, continuous integration, and continuous deployment setups&lt;/p&gt;
&lt;p&gt;At a high level adopting the use of Chainguard Libraries consists of the
following steps:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Remove local caches on workstations and CI/CD pipelines. This step ensures that
any libraries that were already sourced from other repositories are requested
again and the version from Chainguard Libraries is used instead of other
binaries.&lt;/li&gt;
&lt;li&gt;Change configuration to access Chainguard Libraries via your repository
manager after the changes from the &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/"&gt;global
configuration&lt;/a&gt; are
implemented.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These changes must be performed on all workstations of individual developers and
other engineers running relevant application builds. They must also be performed
on any build server such as Jenkins, TeamCity, GitHub or other infrastructure
that builds the applications or otherwise downloads and uses relevant libraries.&lt;/p&gt;</description></item><item><title>Management and maintenance</title><link>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/management/</link><pubDate>Tue, 25 Mar 2025 08:04:00 +0000</pubDate><guid>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/management/</guid><description>&lt;p&gt;Chainguard Libraries for Java operates transparently after completing the &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/"&gt;global configuration&lt;/a&gt; and &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/build-configuration/"&gt;build configuration&lt;/a&gt;, automatically providing security-enhanced versions of your Maven dependencies. New artifacts and versions are retrieved from Chainguard&amp;rsquo;s hardened repository when available, while Maven Central and other configured repositories provide fallback access to ensure continuous development workflow without interruption.&lt;/p&gt;
&lt;p&gt;The following sections detail optional management, maintenance, and auditing
steps on the repository manager and the build tool.&lt;/p&gt;
&lt;p&gt;&lt;a id="java-verification"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="source-verification" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Source verification&lt;/span&gt;
&lt;a href="#source-verification" class="anchor" aria-label="Link to Source verification" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;Use &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/verification/"&gt;chainver&lt;/a&gt; to verify that a specific
library or file originates from Chainguard in an automated fashion or follow the
steps in this section for manual verification.&lt;/p&gt;</description></item><item><title>Migrating a Java project to Chainguard Libraries</title><link>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/migration/</link><pubDate>Thu, 02 Jul 2026 00:00:00 +0000</pubDate><guid>https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/migration/</guid><description>&lt;p&gt;Chainguard Libraries for Java provides a curated repository of packages rebuilt from upstream sources and &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/overview/#malware-and-greyware-detection"&gt;scanned for malware&lt;/a&gt;. Because Chainguard Libraries uses the standard Maven repository format, switching an existing project requires only a repository configuration change — no changes to your application code or dependency versions.&lt;/p&gt;
&lt;p&gt;This guide walks through migrating an existing Java project to Chainguard Libraries, covering the two most common setups:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Direct access — your build tool connects directly to libraries.cgr.dev. This option is faster for initial evaluation and smaller-scale setups.&lt;/li&gt;
&lt;li&gt;Repository manager — your build tool connects to a repository manager (&lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/#cloudsmith"&gt;Cloudsmith&lt;/a&gt;, &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/#google-artifact-registry"&gt;Google Artifact Registry&lt;/a&gt;, &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/#jfrog-artifactory"&gt;JFrog Artifactory&lt;/a&gt;, or &lt;a href="https://deploy-preview-3615--ornate-narwhal-088216.netlify.app/chainguard/libraries/java/global-configuration/#sonatype-nexus-repository"&gt;Sonatype Nexus&lt;/a&gt;), which proxies requests to Chainguard Libraries.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="prerequisites" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Prerequisites&lt;/span&gt;
&lt;a href="#prerequisites" class="anchor" aria-label="Link to Prerequisites" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;Before you begin, you need:&lt;/p&gt;</description></item></channel></rss>