# Java Advent Calendar

The JVM Programming Advent Calendar

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Santa's Python Pitfalls: A Java Developer's Guide to Staying Safe This Christmas

DevFeed: [Santa's Python Pitfalls: A Java Developer's Guide to Staying Safe This Christmas](<https://devfeed.tech/articles/santa-s-python-pitfalls-a-java-developer-s-guide-to-staying-safe-this-christmas-23029.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/santas-python-pitfalls-a-java-developers-guide-to-staying-safe-this-christmas.html>)

Author: Steve Poole

Published: 2025-12-24T03:03:09Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Python](<https://devfeed.tech/topics/python.md>), [pip](<https://devfeed.tech/topics/pip.md>), [PyPI](<https://devfeed.tech/topics/pypi.md>), [Maven Central](<https://devfeed.tech/topics/maven-central.md>), [Java](<https://devfeed.tech/topics/java.md>), [Maven](<https://devfeed.tech/topics/maven.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [attacks](<https://devfeed.tech/tags/attacks.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [developer](<https://devfeed.tech/tags/developer.md>), [guide](<https://devfeed.tech/tags/guide.md>), [install](<https://devfeed.tech/tags/install.md>), [internet](<https://devfeed.tech/tags/internet.md>), [java](<https://devfeed.tech/tags/java.md>), [maven-central](<https://devfeed.tech/tags/maven-central.md>), [mirror](<https://devfeed.tech/tags/mirror.md>), [model](<https://devfeed.tech/tags/model.md>), [packaging](<https://devfeed.tech/tags/packaging.md>), [pitfalls](<https://devfeed.tech/tags/pitfalls.md>), [pypi](<https://devfeed.tech/tags/pypi.md>), [python](<https://devfeed.tech/tags/python.md>), [registry](<https://devfeed.tech/tags/registry.md>), [trust](<https://devfeed.tech/tags/trust.md>)

### AI overview

A Java-focused guide to Python package-management risks. It contrasts Maven Central with PyPI, highlighting flat package naming, trusting dependency resolution, typosquatting, dependency confusion, and unsafe installation commands. It recommends version pins, known sources, private registries, and lock files.

### Source excerpt

Just like that it happened. You, a disciplined Java developer, are now installing Python. Like everything in 2025, it just arrived. One day, you were running a tidy mvn install, the next, you're learning about virtual environments and fighting an unfriendly pip install that won't explain what it just pulled from the internet. Good news: [...] The post Santa's Python Pitfalls: A Java Developer's Guide to Staying Safe This Christmas appeared first on JVM Advent.

## Chicory: A JVM-Native WebAssembly Runtime for Java Libraries

DevFeed: [Chicory: A JVM-Native WebAssembly Runtime for Java Libraries](<https://devfeed.tech/articles/bring-webassembly-to-the-jvm-how-chicory-is-powering-a-new-generation-of-java-libraries-23013.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/chicory-webassembly-on-the-jvm.html>)

Author: Andrea Peruffo

Published: 2025-12-23T03:03:36Z

Content type: article

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [WebAssembly](<https://devfeed.tech/topics/web-assembly.md>), [Java](<https://devfeed.tech/topics/java.md>)

Tags: [2017](<https://devfeed.tech/tags/2017.md>), [java](<https://devfeed.tech/tags/java.md>), [java-libraries](<https://devfeed.tech/tags/java-libraries.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [native](<https://devfeed.tech/tags/native.md>), [webassembly](<https://devfeed.tech/tags/webassembly.md>)

### AI overview

This article explains how Chicory brings WebAssembly execution to Java applications through a JVM-native runtime with zero native dependencies or JNI. It describes portability, JVM sandbox integration, and execution modes, and discusses Chicory's use in Java libraries.

### Source excerpt

Introduction: the promise of "embed once, run anywhere" reimagined What if you could embed native-level capabilities into your Java applications, think of database engines, scripting runtimes, policy interpreters, even compilers and still remain pure Java, with no JNI, no native binaries, no concerns about OS or architecture compatibility? That is the promise of combining [...] The post Bring WebAssembly to the JVM. How Chicory Is Powering a New Generation of Java Libraries appeared first on JVM Advent.

## Delegating Java tasks to Supervised AI Dev Pipelines

DevFeed: [Delegating Java tasks to Supervised AI Dev Pipelines](<https://devfeed.tech/articles/delegating-java-tasks-to-supervised-ai-dev-pipelines-23015.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/delegating-java-tasks-to-supervised-ai-dev-pipelines.html>)

Author: Juan Antonio Breña Moral

Published: 2025-12-22T03:03:48Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [cursor](<https://devfeed.tech/topics/cursor.md>), [AI Agent](<https://devfeed.tech/topics/ai-agent.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [Frontier Model](<https://devfeed.tech/topics/frontier-model.md>), [API](<https://devfeed.tech/topics/api.md>), [Development](<https://devfeed.tech/topics/development.md>), [Cross-origin resource sharing (CORS)](<https://devfeed.tech/topics/cors.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [GitLab](<https://devfeed.tech/topics/gitlab.md>), [Hackathon-Kit](<https://devfeed.tech/topics/hackathon-kit.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [ai](<https://devfeed.tech/tags/ai.md>), [ai-agent](<https://devfeed.tech/tags/ai-agent.md>), [api](<https://devfeed.tech/tags/api.md>), [automation](<https://devfeed.tech/tags/automation.md>), [cursor](<https://devfeed.tech/tags/cursor.md>), [dev](<https://devfeed.tech/tags/dev.md>), [frontier-model](<https://devfeed.tech/tags/frontier-model.md>), [github](<https://devfeed.tech/tags/github.md>), [gitlab](<https://devfeed.tech/tags/gitlab.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [pipeline](<https://devfeed.tech/tags/pipeline.md>), [rest](<https://devfeed.tech/tags/rest.md>)

### AI overview

This tutorial explains how to use Cursor Agent CLI and Cursor Cloud Agents to delegate Java-related software tasks to frontier models. It covers running Cursor Agent CLI in development pipelines, submitting pull requests for review, and using Cursor Cloud Agents through REST endpoints with repositories, prompts, models, and API keys.

### Source excerpt

During the second part of this year, Anysphere, the company behind Cursor IDE, released 2 new products that could help you in 2026 increase the level of automation in your software operations. The names of both products are: Cursor Agent CLI and Cursor Cloud Agents. The article will explain the features that both products share [...] The post Delegating Java tasks to Supervised AI Dev Pipelines appeared first on JVM Advent.

## How to really measure LLMs for JVM Code? A Benchmarking guide for late 2025

DevFeed: [How to really measure LLMs for JVM Code? A Benchmarking guide for late 2025](<https://devfeed.tech/articles/how-to-really-measure-llms-for-jvm-code-a-benchmarking-guide-for-late-2025-23020.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/how-to-really-measure-llms-for-jvm-code-a-benchmarking-guide-for-late-2025.html>)

Author: Artur Skowronski

Published: 2025-12-21T04:04:59Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [LLM evaluation / benchmarking](<https://devfeed.tech/topics/llm-evaluation-benchmarking.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [coding](<https://devfeed.tech/topics/coding.md>), [Java](<https://devfeed.tech/topics/java.md>), [Scala](<https://devfeed.tech/topics/scala.md>)

Tags: [2017](<https://devfeed.tech/tags/2017.md>), [benchmark](<https://devfeed.tech/tags/benchmark.md>), [benchmarking](<https://devfeed.tech/tags/benchmarking.md>), [benchmarks](<https://devfeed.tech/tags/benchmarks.md>), [coding](<https://devfeed.tech/tags/coding.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [llms](<https://devfeed.tech/tags/llms.md>), [scala](<https://devfeed.tech/tags/scala.md>)

### AI overview

This guide explains how to evaluate large language models for coding, focusing on benchmarks relevant to JVM languages such as Java, Kotlin, and Scala. It describes the shift from testing isolated code generation to assessing software-engineering tasks, including HumanEval, MBPP, and SWE-bench.

### Source excerpt

If you're reading this, you're probably already using some LLM for coding. Maybe it's Copilot, maybe Claude Code, maybe Cursor with Gemini enabled (or Cursor's own model). You know the drill. Do you truly expect the announcement "We are worst than competitors?" The problem is that when someone asks, "Which model is best for Java?", [...] The post How to really measure LLMs for JVM Code? A Benchmarking guide for late 2025 appeared first on JVM Advent.

## Out with the Old, In with the New: A Guide to Application Upkeep

DevFeed: [Out with the Old, In with the New: A Guide to Application Upkeep](<https://devfeed.tech/articles/out-with-the-old-in-with-the-new-a-guide-to-application-upkeep-23026.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/out-with-the-old-in-with-the-new.html>)

Author: Andres Sacco

Published: 2025-12-20T03:08:59Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [migration](<https://devfeed.tech/topics/migration.md>), [Spring Boot](<https://devfeed.tech/topics/spring-boot.md>), [Microservice](<https://devfeed.tech/topics/microservice.md>), [Vulnerabilities](<https://devfeed.tech/topics/vulnerabilities.md>), [Security](<https://devfeed.tech/topics/security.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [automatic](<https://devfeed.tech/tags/automatic.md>), [guide](<https://devfeed.tech/tags/guide.md>), [java](<https://devfeed.tech/tags/java.md>), [legacy-application](<https://devfeed.tech/tags/legacy-application.md>), [legacy-code](<https://devfeed.tech/tags/legacy-code.md>), [maintainability](<https://devfeed.tech/tags/maintainability.md>), [microservices](<https://devfeed.tech/tags/microservices.md>), [migration](<https://devfeed.tech/tags/migration.md>), [rewrite](<https://devfeed.tech/tags/rewrite.md>), [security](<https://devfeed.tech/tags/security.md>), [spring](<https://devfeed.tech/tags/spring.md>), [spring-boot](<https://devfeed.tech/tags/spring-boot.md>)

### AI overview

This guide explains why upgrading Java or Spring Boot applications involves more than changing a version number. It discusses migration challenges, legacy code, differing versions across microservices, and risks from outdated software, including security, compatibility, stability, and maintainability concerns.

### Source excerpt

Migrating an existing application to a new version of Java or a framework such as Spring Boot involves much more than simply updating a version number in a file. Each new release of a library or language brings new features, deprecations, behavioral changes, and sometimes complete API redesigns. When legacy code is involved, these upgrades [...] The post Out with the Old, In with the New: A Guide to Application Upkeep appeared first on JVM Advent.

## Getting Started with SpringAI

DevFeed: [Getting Started with SpringAI](<https://devfeed.tech/articles/getting-started-with-springai-23018.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/getting-started-with-springai.html>)

Author: Samuel Lissner

Published: 2025-12-19T03:03:39Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Spring AI](<https://devfeed.tech/topics/spring-ai.md>), [Spring Boot](<https://devfeed.tech/topics/spring-boot.md>), [Java](<https://devfeed.tech/topics/java.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [Claude](<https://devfeed.tech/topics/claude.md>), [Retrieval Augmented Generation (RAG)](<https://devfeed.tech/topics/retrieval-augmented-generation-rag.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [apis](<https://devfeed.tech/tags/apis.md>), [claude](<https://devfeed.tech/tags/claude.md>), [guide](<https://devfeed.tech/tags/guide.md>), [java](<https://devfeed.tech/tags/java.md>), [language-models](<https://devfeed.tech/tags/language-models.md>), [rag](<https://devfeed.tech/tags/rag.md>), [spring](<https://devfeed.tech/tags/spring.md>), [spring-ai](<https://devfeed.tech/tags/spring-ai.md>)

### AI overview

A hands-on tutorial for building a Spring AI application that summarizes Wikipedia articles with large language models. It uses Spring Boot, Java 21, Anthropic's Claude models, Apache Tika for PDF text extraction, and Retrieval-Augmented Generation concepts.

### Source excerpt

A Hands-On Guide to Text Summarization Over the past year, the Java ecosystem has made significant strides in making Generative AI development enterprise-ready. For Spring developers, SpringAI has emerged as the go-to toolkit for seamlessly integrating enterprise data and APIs with AI models. Are you curious in developing enterprise grade AI applications with Spring AI? [...] The post Getting Started with SpringAI appeared first on JVM Advent.

## Making Java a first-class AI citizen with Langchain4j

DevFeed: [Making Java a first-class AI citizen with Langchain4j](<https://devfeed.tech/articles/making-java-a-first-class-ai-citizen-with-langchain4j-23024.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/making-java-a-first-class-ai-citizen-with-langchain4j.html>)

Author: deors

Published: 2025-12-18T03:03:33Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [AI Development](<https://devfeed.tech/topics/ai-development.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [API](<https://devfeed.tech/topics/api.md>), [Resilience](<https://devfeed.tech/topics/resilience.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [observability](<https://devfeed.tech/topics/observability.md>), [OpenAI](<https://devfeed.tech/topics/openai.md>), [Google AI](<https://devfeed.tech/topics/google-ai.md>), [Ollama](<https://devfeed.tech/topics/ollama.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [ai](<https://devfeed.tech/tags/ai.md>), [ai-models](<https://devfeed.tech/tags/ai-models.md>), [api](<https://devfeed.tech/tags/api.md>), [java](<https://devfeed.tech/tags/java.md>), [langchain4j](<https://devfeed.tech/tags/langchain4j.md>), [ollama](<https://devfeed.tech/tags/ollama.md>), [openai](<https://devfeed.tech/tags/openai.md>), [vertex](<https://devfeed.tech/tags/vertex.md>)

### AI overview

This article introduces LangChain4j as a framework-agnostic Java library for building and running generative AI solutions. It explains its API, integration with Spring, Jakarta, Quarkus, Micronaut, and standalone applications, and support for cloud and local models, with examples based on version 0.36.2.

### Source excerpt

Introduction When the first technical solutions based on Artificial Intelligence began to be created, Python was the language and runtime platform of choice. It was not a total surprise as Python was the choice of the great majority of data scientists to analyse data, perform experiments and create AI models, so it was kind of [...] The post Making Java a first-class AI citizen with Langchain4j appeared first on JVM Advent.

## Using Ahead-of-Time Cache Optimizations in Recent JDK Releases

DevFeed: [Using Ahead-of-Time Cache Optimizations in Recent JDK Releases](<https://devfeed.tech/articles/run-into-the-new-year-with-java-s-ahead-of-time-cache-features-23028.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/run-java-aot-cache-optimizations.html>)

Author: Ana-Maria Mihalceanu

Published: 2025-12-17T03:03:45Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [JIT](<https://devfeed.tech/topics/jit.md>), [Memory safety verification](<https://devfeed.tech/topics/memory-safety-verification.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [cache](<https://devfeed.tech/tags/cache.md>), [guides](<https://devfeed.tech/tags/guides.md>), [java](<https://devfeed.tech/tags/java.md>), [java-advent](<https://devfeed.tech/tags/java-advent.md>), [jdk](<https://devfeed.tech/tags/jdk.md>), [jdk25](<https://devfeed.tech/tags/jdk25.md>), [jit](<https://devfeed.tech/tags/jit.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [openjdk](<https://devfeed.tech/tags/openjdk.md>), [performance](<https://devfeed.tech/tags/performance.md>), [project-leyden](<https://devfeed.tech/tags/project-leyden.md>), [startup](<https://devfeed.tech/tags/startup.md>)

### AI overview

This tutorial explains how to use Ahead-of-Time cache features in recent JDK releases to improve Java application startup time and warm-up performance. It covers the train, assemble, and run workflow introduced in JDK 24 and method profiling improvements in JDK 25.

### Source excerpt

As the year comes to a close, turn your focus to boosting your Java application performance by applying Ahead-of-Time (AOT) cache features in recent JDK releases. This article guides you through using AOT cache optimizations in your application, thereby minimizing startup time and achieving faster peak performance. What is the Ahead-of-time cache in the jdk [...] The post Run Into the New Year with Java's Ahead-of-Time Cache Features appeared first on JVM Advent.

## Using Java's Foreign Function & Memory API to simplify Pi4J native interactions

DevFeed: [Using Java's Foreign Function & Memory API to simplify Pi4J native interactions](<https://devfeed.tech/articles/the-ffm-api-how-openjdk-changed-the-game-for-native-interactions-and-made-pi4j-better-23017.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/ffm-api-for-java-on-raspberry-pi.html>)

Author: Frank Delporte

Published: 2025-12-16T03:03:39Z

Content type: article

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [openjdk](<https://devfeed.tech/topics/openjdk.md>), [Java](<https://devfeed.tech/topics/java.md>), [Library](<https://devfeed.tech/topics/library.md>), [Memory Safety](<https://devfeed.tech/topics/memory-safety.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [code](<https://devfeed.tech/tags/code.md>), [java](<https://devfeed.tech/tags/java.md>), [library](<https://devfeed.tech/tags/library.md>), [memory-safety](<https://devfeed.tech/tags/memory-safety.md>), [openjdk](<https://devfeed.tech/tags/openjdk.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>)

### AI overview

The article explains how Java's Foreign Function & Memory API, finalized in Java 22, can simplify Pi4J's interaction with native libraries and memory on Raspberry Pi. It contrasts the API with Pi4J's earlier JNI and Java Native Access approach, focusing on memory safety, easier native-library access, and maintainability.

### Source excerpt

The Pi4J project is a Java library that allows you to control the GPIO pins and electronic components connected to a Raspberry Pi with pure Java code. It removes the complexity of using native libraries and the Java Native Interface (JNI), allowing you to focus on your application logic. In the Java Advent of 2020, I published "Light up [...] The post The FFM API: How OpenJDK Changed the Game for Native Interactions (And Made Pi4J Better!) appeared first on JVM Advent.

## Building a Java Agent to Generate a Karaoke Bar Schedule

DevFeed: [Building a Java Agent to Generate a Karaoke Bar Schedule](<https://devfeed.tech/articles/tinkering-with-a-hands-off-agent-23033.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/tinkering-with-a-hands-off-agent.html>)

Author: Tom Cools

Published: 2025-12-15T03:03:31Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [Optimization](<https://devfeed.tech/topics/optimization.md>), [Library](<https://devfeed.tech/topics/library.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [Development](<https://devfeed.tech/topics/development.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [agent](<https://devfeed.tech/tags/agent.md>), [building](<https://devfeed.tech/tags/building.md>), [development](<https://devfeed.tech/tags/development.md>), [java](<https://devfeed.tech/tags/java.md>), [java-advent](<https://devfeed.tech/tags/java-advent.md>), [library](<https://devfeed.tech/tags/library.md>), [optimization](<https://devfeed.tech/tags/optimization.md>)

### AI overview

This article describes experimenting with Langchain4J Agentic to build a Java agent that generates an optimization application from a problem description. The example scenario is a karaoke bar scheduler with rules for alternating singers and artists and with song start times.

### Source excerpt

It's great to write another entry for Java Advent this year! Last year, I wrote about how you can use Timefold Solver, an optimization library written in Java, to solve planning problems such as employee scheduling or, in true holiday spirit, optimizing Santa's travel route. This year, as the world is now all going "agentic", [...] The post Tinkering with a "hands-off" agent appeared first on JVM Advent.

## Spec-Driven Development in Practice: How AI Simplify Full-Stack Java

DevFeed: [Spec-Driven Development in Practice: How AI Simplify Full-Stack Java](<https://devfeed.tech/articles/spec-driven-development-in-practice-how-ai-simplify-full-stack-java-23030.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/spec-driven-development-in-practice-how-ai-simplify-full-stack-java.html>)

Author: Simon Martinelli

Published: 2025-12-14T03:03:46Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Spec Driven Development](<https://devfeed.tech/topics/spec-driven-development.md>), [Specifications](<https://devfeed.tech/topics/specifications.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Requirements](<https://devfeed.tech/topics/requirements.md>), [Java](<https://devfeed.tech/topics/java.md>), [Spring Boot](<https://devfeed.tech/topics/spring-boot.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [ai](<https://devfeed.tech/tags/ai.md>), [full-stack](<https://devfeed.tech/tags/full-stack.md>), [java](<https://devfeed.tech/tags/java.md>), [spec-driven-development](<https://devfeed.tech/tags/spec-driven-development.md>), [spring-boot](<https://devfeed.tech/tags/spring-boot.md>)

### AI overview

The article explains Spec-Driven Development and the AI Unified Process (AIUP) for a full-stack Java application using Spring Boot, jOOQ, and Vaadin. It presents requirements, an entity model, and system use cases as ordered specification artifacts from which AI can generate code, tests, and documentation.

### Source excerpt

AI is changing how we build software, but many teams still work as if nothing has changed. They treat code as the only reliable artifact. Everything else slowly gets outdated: AI code generation tools can make this even worse if used without structure. They produce code fast, but the process behind the code remains the [...] The post Spec-Driven Development in Practice: How AI Simplify Full-Stack Java appeared first on JVM Advent.

## Hidden Treasures of Eclipse Collections 2025 Edition

DevFeed: [Hidden Treasures of Eclipse Collections 2025 Edition](<https://devfeed.tech/articles/hidden-treasures-of-eclipse-collections-2025-edition-23019.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/hidden-treasures-of-eclipse-collections-2025-edition.html>)

Author: Nikhil Nanivadekar

Published: 2025-12-13T03:03:52Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [blog](<https://devfeed.tech/tags/blog.md>), [collections](<https://devfeed.tech/tags/collections.md>), [java](<https://devfeed.tech/tags/java.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

A tutorial demonstrating four lesser-known features of the open source Eclipse Collections framework for Java, including collection-to-map transformation, occurrence counting, grouping and summing, and aggregation.

### Source excerpt

Eclipse Collections is an open source Java Collections framework. In this blog I am going to demonstrate four lesser known features of the framework. I have published similar blogs in Java Advent Calendars of 2018, 2019, 2020, 2021, 2022, 2023, and 2024. Please refer to the resources at the end of the blog for more [...] The post Hidden Treasures of Eclipse Collections 2025 Edition appeared first on JVM Advent.

## Strengthening your Software Supply Chain

DevFeed: [Strengthening your Software Supply Chain](<https://devfeed.tech/articles/strengthening-your-software-supply-chain-23031.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/strengthening-your-software-supply-chain.html>)

Author: Andres Almiray

Published: 2025-12-12T03:03:02Z

Content type: article

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [supply-chain-security](<https://devfeed.tech/topics/supply-chain-security.md>), [reproducible builds](<https://devfeed.tech/topics/reproducible-builds.md>), [Java](<https://devfeed.tech/topics/java.md>), [Software](<https://devfeed.tech/topics/software.md>), [Maven](<https://devfeed.tech/topics/maven.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [build-tools](<https://devfeed.tech/tags/build-tools.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [devops](<https://devfeed.tech/tags/devops.md>), [integrity](<https://devfeed.tech/tags/integrity.md>), [java](<https://devfeed.tech/tags/java.md>), [reproducible-builds](<https://devfeed.tech/tags/reproducible-builds.md>), [security](<https://devfeed.tech/tags/security.md>), [software-supply-chain](<https://devfeed.tech/tags/software-supply-chain.md>), [supply-chain](<https://devfeed.tech/tags/supply-chain.md>)

### AI overview

This article explains how to strengthen the Java software supply chain beyond relying on build tools alone. It discusses SLSA security controls, attacks such as Log4Shell and the XZ backdoor, reproducible artifacts, and support from JReleaser for applying these practices.

### Source excerpt

According to Wikipedia, a software supply chain is the components, libraries, tools, and processes used to develop, build, and publish a software artifact. The Java space provides thousands upon thousands of libraries that may be consumed as dependencies for building projects. Many of these libraries rely on Apache Maven as their build tool of choice, [...] The post Strengthening your Software Supply Chain appeared first on JVM Advent.

## A Glance at GPU Goodness in Java: LLM Inference with TornadoVM

DevFeed: [A Glance at GPU Goodness in Java: LLM Inference with TornadoVM](<https://devfeed.tech/articles/a-glance-at-gpu-goodness-in-java-llm-inference-with-tornadovm-23010.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/a-glance-at-gpu-goodness-in-java-llm-inference-with-tornadovm.html>)

Author: Edoardo Vacchi

Published: 2025-12-11T03:03:21Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [TornadoVM](<https://devfeed.tech/topics/tornadovm.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [GPU](<https://devfeed.tech/topics/gpu.md>), [Inference](<https://devfeed.tech/topics/inference.md>), [Java](<https://devfeed.tech/topics/java.md>), [openjdk](<https://devfeed.tech/topics/openjdk.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [c-c-plus-plus](<https://devfeed.tech/tags/c-c-plus-plus.md>), [c-plus-plus](<https://devfeed.tech/tags/c-plus-plus.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [inference](<https://devfeed.tech/tags/inference.md>), [java](<https://devfeed.tech/tags/java.md>), [jdk](<https://devfeed.tech/tags/jdk.md>), [linux](<https://devfeed.tech/tags/linux.md>), [llama3](<https://devfeed.tech/tags/llama3.md>), [llm](<https://devfeed.tech/tags/llm.md>), [openjdk](<https://devfeed.tech/tags/openjdk.md>), [tornadovm](<https://devfeed.tech/tags/tornadovm.md>)

### AI overview

This tutorial introduces TornadoVM, an OpenJDK plugin that compiles annotated Java code for heterogeneous hardware, and explains how it can run LLM inference on GPUs. It covers installation, a basic GPU kernel, and the GPULlama3 project, which demonstrates running a Llama 3 model in Java with GPU acceleration.

### Source excerpt

It seems like it's become a tradition that I announce I have joined a new company for the Java Advent of Code. At least this time it's actually an old friend: I am excited to be back at Red Hat, in the llm-d team! Does that mean I forgot about Java? Of course not. If [...] The post A Glance at GPU Goodness in Java: LLM Inference with TornadoVM appeared first on JVM Advent.

## Preparing Java Systems for the European Post-Quantum Cryptography Transition

DevFeed: [Preparing Java Systems for the European Post-Quantum Cryptography Transition](<https://devfeed.tech/articles/breaking-keys-and-building-trust-the-java-way-23012.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/breaking-keys-and-building-trust-the-java-way.html>)

Author: Ixchel Ruiz

Published: 2025-12-10T03:03:48Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Cryptography](<https://devfeed.tech/topics/cryptography.md>), [Post-Quantum](<https://devfeed.tech/topics/post-quantum.md>), [Java](<https://devfeed.tech/topics/java.md>), [Post-quantum cryptography](<https://devfeed.tech/topics/post-quantum-cryptography.md>), [Resilience](<https://devfeed.tech/topics/resilience.md>), [Security, Privacy and Abuse Prevention](<https://devfeed.tech/topics/security-privacy-and-abuse-prevention.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [compliance](<https://devfeed.tech/tags/compliance.md>), [cryptography](<https://devfeed.tech/tags/cryptography.md>), [cybersecurity](<https://devfeed.tech/tags/cybersecurity.md>), [java](<https://devfeed.tech/tags/java.md>), [post-quantum](<https://devfeed.tech/tags/post-quantum.md>), [post-quantum-cryptography](<https://devfeed.tech/tags/post-quantum-cryptography.md>), [quantum](<https://devfeed.tech/tags/quantum.md>), [resilience](<https://devfeed.tech/tags/resilience.md>)

### AI overview

This article explains how European legislation, strategic planning, and emerging standards are driving a transition toward crypto-agile and post-quantum-ready systems. It provides guidance for Java practitioners and discusses KEM/KDF APIs, PEM support, hybrid TLS efforts, and PQC-related proposals.

### Source excerpt

-- Preparing for the Quantum Shift Table of Contents The EU's Post-Quantum Plan: Recommendation (EU) 2024/1101 What will upcoming EU cybersecurity legislation require? And how can Java help you prepare? Why this is significant for architects? Java advisory note NIS2 -- Cryptography as Organizational Governance Engineering Implications Java advisory note DORA -- Operational Resilience [...] The post Breaking keys and building trust: The JAVA way! appeared first on JVM Advent.

## Discover Roq, the Quarkus Way for Static Site Generation in Java

DevFeed: [Discover Roq, the Quarkus Way for Static Site Generation in Java](<https://devfeed.tech/articles/discover-roq-the-quarkus-way-for-static-site-generation-in-java-23016.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/discover-roq-the-quarkus-way-for-static-site-generation-in-java.html>)

Author: Andy Damevin

Published: 2025-12-09T02:02:47Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Quarkus](<https://devfeed.tech/topics/quarkus.md>), [Java](<https://devfeed.tech/topics/java.md>), [Development](<https://devfeed.tech/topics/development.md>), [Tailwind CSS](<https://devfeed.tech/topics/tailwind.md>), [gatsby](<https://devfeed.tech/topics/gatsby.md>), [Jekyll](<https://devfeed.tech/topics/jekyll.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [cms](<https://devfeed.tech/tags/cms.md>), [dev](<https://devfeed.tech/tags/dev.md>), [github-action](<https://devfeed.tech/tags/github-action.md>), [hugo](<https://devfeed.tech/tags/hugo.md>), [java](<https://devfeed.tech/tags/java.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [quarkus](<https://devfeed.tech/tags/quarkus.md>), [ssg](<https://devfeed.tech/tags/ssg.md>), [static-site-generator](<https://devfeed.tech/tags/static-site-generator.md>), [tailwindcss](<https://devfeed.tech/tags/tailwindcss.md>), [themes](<https://devfeed.tech/tags/themes.md>)

### AI overview

This tutorial introduces Roq, a static-site generator built as a thin layer on Quarkus for Java. It explains how Roq uses Quarkus features such as Qute templates, extensions, Dev Mode, plugins, themes, data files, and static-site export, then demonstrates setup and live reloading with a Quarkus, Roq, and Tailwind project.

### Source excerpt

Did you know about Roq? A powerful new tool that combines Java and Quarkus. Ok, prep a warm drink and put on some soft music and let's find out why Roq is so cool with the comfort of Quarkus Dev Mode and all its eco-system. Bonus: a touch of TailwindCss to make it look great! The post Discover Roq, the Quarkus Way for Static Site Generation in Java appeared first on JVM Advent.

## Nice and Naughty Cases of Pattern Matching

DevFeed: [Nice and Naughty Cases of Pattern Matching](<https://devfeed.tech/articles/nice-and-naughty-cases-of-pattern-matching-23025.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/nice-and-naughty-cases-of-pattern-matching.html>)

Author: Cay Horstmann

Published: 2025-12-08T02:02:26Z

Content type: article

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [article](<https://devfeed.tech/tags/article.md>), [enums](<https://devfeed.tech/tags/enums.md>), [exhaustive](<https://devfeed.tech/tags/exhaustive.md>), [expression](<https://devfeed.tech/tags/expression.md>), [interfaces](<https://devfeed.tech/tags/interfaces.md>), [java](<https://devfeed.tech/tags/java.md>), [java-language](<https://devfeed.tech/tags/java-language.md>), [pattern-matching](<https://devfeed.tech/tags/pattern-matching.md>), [patterns](<https://devfeed.tech/tags/patterns.md>), [programming](<https://devfeed.tech/tags/programming.md>), [sealed](<https://devfeed.tech/tags/sealed.md>), [statement](<https://devfeed.tech/tags/statement.md>), [syntax](<https://devfeed.tech/tags/syntax.md>), [types](<https://devfeed.tech/tags/types.md>)

### AI overview

This article examines Java pattern matching in switch and instanceof, explaining when it fits data-oriented programming, when it becomes an antipattern, and how it interacts with legacy behavior. It uses sealed interfaces, records, enums, and JSON values to illustrate exhaustive pattern matching.

### Source excerpt

Since Java 14, the Java switch and instanceof statements have been enhanced, in multiple phases, to support pattern matching and a "data-oriented" programming style. In this article, I explore when this programming style is beneficial, and why. I look at the sweet spot of perfect pattern usage, absolute antipatterns where it should not be used, [...] The post Nice and Naughty Cases of Pattern Matching appeared first on JVM Advent.

## Java Hello World, LLVM Edition

DevFeed: [Java Hello World, LLVM Edition](<https://devfeed.tech/articles/java-hello-world-llvm-edition-23022.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/java-hello-world-llvm-edition.html>)

Author: James Hamilton

Published: 2025-12-07T02:02:37Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [LLVM](<https://devfeed.tech/topics/llvm.md>), [API](<https://devfeed.tech/topics/api.md>), [JIT](<https://devfeed.tech/topics/jit.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [api](<https://devfeed.tech/tags/api.md>), [assembly](<https://devfeed.tech/tags/assembly.md>), [bytecode](<https://devfeed.tech/tags/bytecode.md>), [compilers](<https://devfeed.tech/tags/compilers.md>), [java](<https://devfeed.tech/tags/java.md>), [java-advent](<https://devfeed.tech/tags/java-advent.md>), [jdk](<https://devfeed.tech/tags/jdk.md>), [jit](<https://devfeed.tech/tags/jit.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [llvm](<https://devfeed.tech/tags/llvm.md>)

### AI overview

This tutorial shows how to use Java's Foreign Function & Memory API to call the LLVM C API, generate LLVM IR for a Hello World program, and JIT-compile it to native code. It also introduces LLVM, its IR representations, and local installation on Ubuntu or Debian.

### Source excerpt

After exploring Java bytecode in previous years (2022, 2023, 2024), this year we'll take an unexpected detour for a Java advent: instead of generating Java bytecode, we'll use Java to build and execute LLVM IR, the intermediate language behind compilers like clang. Using Java's Foreign Function & Memory (FFM) API, we'll call the LLVM C [...] The post Java Hello World, LLVM Edition appeared first on JVM Advent.

## Comparing transitive dependency version resolution in Rust and Java

DevFeed: [Comparing transitive dependency version resolution in Rust and Java](<https://devfeed.tech/articles/comparing-transitive-dependency-version-resolution-in-rust-and-java-23014.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/comparing-transitive-dependency-version-resolution-in-rust-and-java.html>)

Author: Nicolas Fränkel

Published: 2025-12-06T02:02:51Z

Content type: comparison

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [Package manager](<https://devfeed.tech/topics/package-manager.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [compare](<https://devfeed.tech/tags/compare.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [java](<https://devfeed.tech/tags/java.md>), [rust](<https://devfeed.tech/tags/rust.md>)

### AI overview

This comparison explains how transitive dependency version resolution differs between Rust and Java. It describes dependency concepts and outlines Java's runtime classpath resolution, where class loading follows the configured classpath order.

### Source excerpt

You learn by comparing to what you already know. I was recently bitten by assuming Rust worked as Java regarding transitive dependency version resolution. In this post, I want to compare the two. Dependencies, transitivity, and version resolution Before diving into the specifics of each stack, let's describe the domain and the problems that come [...] The post Comparing transitive dependency version resolution in Rust and Java appeared first on JVM Advent.

## Beyond x86: Java on ARM in 2025

DevFeed: [Beyond x86: Java on ARM in 2025](<https://devfeed.tech/articles/beyond-x86-java-on-arm-in-2025-23011.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/beyond-x86-java-on-arm-in-2025.html>)

Author: Artur Skowronski

Published: 2025-12-05T02:02:36Z

Content type: article

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Arm](<https://devfeed.tech/topics/arm.md>), [Java](<https://devfeed.tech/topics/java.md>), [x86](<https://devfeed.tech/topics/x86.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>)

Tags: [2017](<https://devfeed.tech/tags/2017.md>), [2025](<https://devfeed.tech/tags/2025.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [arm](<https://devfeed.tech/tags/arm.md>), [backend](<https://devfeed.tech/tags/backend.md>), [cloud](<https://devfeed.tech/tags/cloud.md>), [java](<https://devfeed.tech/tags/java.md>), [processors](<https://devfeed.tech/tags/processors.md>), [x86](<https://devfeed.tech/tags/x86.md>)

### AI overview

The article examines why Java on ARM is becoming more relevant for backend and server workloads in 2025. It discusses ARM's historical association with mobile and embedded devices, Apple's transition to ARM-based Macs, and the development of the Neoverse architecture for data centers, while noting the JVM ecosystem's gradual adaptation.

### Source excerpt

We all know the mantra: "Write Once, Run Anywhere." But for most of Java's history, that "Anywhere" really meant "anywhere, as long as there's Intel or AMD underneath." When most of us were starting out with Java, ARM was something you associated with phones, a Raspberry Pi, or some mysterious "embedded" device - not with [...] The post Beyond x86: Java on ARM in 2025 appeared first on JVM Advent.

## Using Mutation Testing to Evaluate Test Suite Effectiveness

DevFeed: [Using Mutation Testing to Evaluate Test Suite Effectiveness](<https://devfeed.tech/articles/test-your-test-23032.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/test-your-test.html>)

Author: Andres Sacco

Published: 2025-12-04T02:02:10Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [mutation-testing](<https://devfeed.tech/topics/mutation-testing.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [code](<https://devfeed.tech/tags/code.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [effective](<https://devfeed.tech/tags/effective.md>), [mutation](<https://devfeed.tech/tags/mutation.md>), [mutation-testing](<https://devfeed.tech/tags/mutation-testing.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

The article explains why high code coverage does not necessarily indicate effective tests. It introduces mutation testing, which evaluates a test suite by making small controlled changes to source code and checking whether the tests detect those changes.

### Source excerpt

Creating or modifying an application involves many aspects, such as following best practices and applying design patterns to solve everyday problems. After writing the code, developers usually add unit tests and rely on tools like Sonar to track metrics such as code coverage and highlight potentially untested areas. However, high test coverage does not guarantee [...] The post Test Your Test appeared first on JVM Advent.

## How Understanding Request Flow in Spring Boot Changed the Way I Code

DevFeed: [How Understanding Request Flow in Spring Boot Changed the Way I Code](<https://devfeed.tech/articles/how-understanding-request-flow-in-spring-boot-changed-the-way-i-code-23021.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/how-understanding-request-flow-in-spring-boot-changed-the-way-i-code.html>)

Author: Mohammed

Published: 2025-12-03T02:02:20Z

Content type: article

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Spring Boot](<https://devfeed.tech/topics/spring-boot.md>), [backend-development](<https://devfeed.tech/topics/backend-development.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [API](<https://devfeed.tech/topics/api.md>), [Database](<https://devfeed.tech/topics/database.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [api](<https://devfeed.tech/tags/api.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [backend](<https://devfeed.tech/tags/backend.md>), [backend-development](<https://devfeed.tech/tags/backend-development.md>), [controllers](<https://devfeed.tech/tags/controllers.md>), [di](<https://devfeed.tech/tags/di.md>), [java](<https://devfeed.tech/tags/java.md>), [java-advent](<https://devfeed.tech/tags/java-advent.md>), [jpa](<https://devfeed.tech/tags/jpa.md>), [programming](<https://devfeed.tech/tags/programming.md>), [spring-boot](<https://devfeed.tech/tags/spring-boot.md>), [springboot](<https://devfeed.tech/tags/springboot.md>)

### AI overview

This article explains how tracing a request through a Spring Boot application helped the author understand layered backend architecture. It follows the flow from Controller to Service to Repository and Database, and discusses dependency injection, inversion of control, annotations, and the roles of application layers.

### Source excerpt

When I first stepped into backend development, I believed programming was only about one thing: "If the output comes, the job is done." I bundled everything into one giant file -- controllers, logic, database access.I didn't understand why Spring insisted on layers or why DI, IoC, and annotations were so important. The project structure looked [...] The post How Understanding Request Flow in Spring Boot Changed the Way I Code appeared first on JVM Advent.

## Building a Quarkus LangChain4j Extension for Java LLM Applications

DevFeed: [Building a Quarkus LangChain4j Extension for Java LLM Applications](<https://devfeed.tech/articles/quarkus-langchain4j-extension-from-grounds-up-23027.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/quarkus-langchain4j-extension-from-grounds-up.html>)

Author: Martin Toshev

Published: 2025-12-02T04:33:13Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Quarkus](<https://devfeed.tech/topics/quarkus.md>), [Java](<https://devfeed.tech/topics/java.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [observability](<https://devfeed.tech/topics/observability.md>), [tracing](<https://devfeed.tech/topics/tracing.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [agentic](<https://devfeed.tech/tags/agentic.md>), [ai](<https://devfeed.tech/tags/ai.md>), [frameworks](<https://devfeed.tech/tags/frameworks.md>), [healthcare](<https://devfeed.tech/tags/healthcare.md>), [java](<https://devfeed.tech/tags/java.md>), [langchain4j](<https://devfeed.tech/tags/langchain4j.md>), [large-language-models](<https://devfeed.tech/tags/large-language-models.md>), [observability](<https://devfeed.tech/tags/observability.md>), [opentelemetry](<https://devfeed.tech/tags/opentelemetry.md>), [quarkus](<https://devfeed.tech/tags/quarkus.md>), [tracing](<https://devfeed.tech/tags/tracing.md>)

### AI overview

This tutorial explains how the Quarkus LangChain4j extension simplifies integrating Java applications with large language models. It covers build-time and native-image optimizations, CDI-based AI service discovery, type-safe configuration, Quarkus dev mode integration, and observability features before demonstrating an agentic healthcare application.

### Source excerpt

LangChain4j is a top (if not the top) library in use for integrating Java applications with various LLMs (large language models). It provides a number of features such as a unified API for LLM integration, support for vector stores, prompt templates, RAG (retrievalaugmented generation) and more. While we can use it directly in popular frameworks [...] The post Quarkus LangChain4j extension from grounds up appeared first on JVM Advent.

## Lighting the Way: Java, AI, and a Season of New Ideas

DevFeed: [Lighting the Way: Java, AI, and a Season of New Ideas](<https://devfeed.tech/articles/lighting-the-way-java-ai-and-a-season-of-new-ideas-23023.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/lighting-the-way-java-ai-and-a-season-of-new-ideas.html>)

Author: Markus Eisele

Published: 2025-12-01T01:00:25Z

Content type: article

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Quarkus](<https://devfeed.tech/topics/quarkus.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [ai](<https://devfeed.tech/tags/ai.md>), [java](<https://devfeed.tech/tags/java.md>), [llms](<https://devfeed.tech/tags/llms.md>), [quarkus](<https://devfeed.tech/tags/quarkus.md>)

### AI overview

An introductory 2025 Java Advent Calendar article discusses how Java developers are integrating AI and LLMs into production systems. It highlights Quarkus and the Java ecosystem, then introduces a models-as-services pattern using LangChain4j and a Quarkus chat example.

### Source excerpt

When December arrives, I always feel the same mix of nostalgia and excitement. The year starts to slow down, calendars fill with end-of-year meetings, and yet this is when the Java community does something uniquely joyful. We show up every day for 24 days and share what we've learned, built, discovered, and struggled with. It's [...] The post Lighting the Way: Java, AI, and a Season of New Ideas appeared first on JVM Advent.