# maven-plugin

Published articles for maven-plugin.

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

## App Intents: One Java Declaration for Siri, Spotlight, and Shortcuts

DevFeed: [App Intents: One Java Declaration for Siri, Spotlight, and Shortcuts](<https://devfeed.tech/articles/app-intents-one-java-declaration-for-siri-spotlight-and-shortcuts-19197.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/app-intents-siri-spotlight-shortcuts/>)

Author: Shai Almog

Published: 2026-08-27T00:00:00Z

Content type: tutorial

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [App](<https://devfeed.tech/topics/app.md>), [Android](<https://devfeed.tech/topics/android.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Maven](<https://devfeed.tech/topics/maven.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [app](<https://devfeed.tech/tags/app.md>), [build](<https://devfeed.tech/tags/build.md>), [bytecode](<https://devfeed.tech/tags/bytecode.md>), [ios](<https://devfeed.tech/tags/ios.md>), [java](<https://devfeed.tech/tags/java.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [native](<https://devfeed.tech/tags/native.md>), [shortcuts](<https://devfeed.tech/tags/shortcuts.md>), [spotlight](<https://devfeed.tech/tags/spotlight.md>)

### AI overview

Codename One App Intents use Java annotations to generate reflection-free handlers for Siri, Spotlight, Shortcuts, Android launcher shortcuts, and internal application commands. The article explains build-time validation, entity parameters, routing, and concurrent handler execution.

### Source excerpt

Codename One App Intents generate reflection-free handlers for Siri, Spotlight, Shortcuts, Android launcher shortcuts, and an application command layer from Java annotations.

## OpenAPI, ORM, SVG and Lottie

DevFeed: [OpenAPI, ORM, SVG and Lottie](<https://devfeed.tech/articles/openapi-orm-svg-and-lottie-19231.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/build-time-codegen/>)

Author: Shai Almog

Published: 2026-06-01T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>), [Code generation](<https://devfeed.tech/topics/code-generation.md>), [SQLite](<https://devfeed.tech/topics/sqlite.md>), [Object-relational mapping](<https://devfeed.tech/topics/orm.md>), [JSON](<https://devfeed.tech/topics/json.md>), [XML](<https://devfeed.tech/topics/xml.md>), [SVG](<https://devfeed.tech/topics/svg.md>), [ASP.NET Core](<https://devfeed.tech/topics/asp-net-core.md>), [FastAPI](<https://devfeed.tech/topics/fastapi.md>), [Nest](<https://devfeed.tech/topics/nestjs.md>)

Tags: [build](<https://devfeed.tech/tags/build.md>), [fastapi](<https://devfeed.tech/tags/fastapi.md>), [http](<https://devfeed.tech/tags/http.md>), [java](<https://devfeed.tech/tags/java.md>), [json](<https://devfeed.tech/tags/json.md>), [lottie](<https://devfeed.tech/tags/lottie.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [net](<https://devfeed.tech/tags/net.md>), [openapi](<https://devfeed.tech/tags/openapi.md>), [orm](<https://devfeed.tech/tags/orm.md>), [rest](<https://devfeed.tech/tags/rest.md>), [spring](<https://devfeed.tech/tags/spring.md>), [svg](<https://devfeed.tech/tags/svg.md>), [xml](<https://devfeed.tech/tags/xml.md>)

### AI overview

A Codename One release follow-up describes a shared build-time code generation pipeline for OpenAPI client generation, a SQLite ORM, JSON and XML mappers, SVG and Lottie transcoders, and a declarative router. The pipeline emits typed Java from annotations or declarative source files without reflection.

### Source excerpt

An OpenAPI client generator, a JPA-shaped SQLite ORM, JAXB-shaped JSON / XML mappers, build-time SVG / Lottie transcoders, and a declarative router with deep links. All on the same build-time codegen pipeline.

## Stream APIs, Swift Package Manager, Tutorial Trail Refresh, and the UWP Transition

DevFeed: [Stream APIs, Swift Package Manager, Tutorial Trail Refresh, and the UWP Transition](<https://devfeed.tech/articles/stream-apis-swift-package-manager-tutorial-trail-refresh-and-the-uwp-transition-19534.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/stream-apis-spm-tutorial-trail-and-uwp/>)

Author: Shai Almog

Published: 2026-03-20T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Universal Windows Platform](<https://devfeed.tech/topics/uwp.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Package manager](<https://devfeed.tech/topics/package-manager.md>)

Tags: [dependencies](<https://devfeed.tech/tags/dependencies.md>), [ios](<https://devfeed.tech/tags/ios.md>), [java](<https://devfeed.tech/tags/java.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [swift-package](<https://devfeed.tech/tags/swift-package.md>), [swift-package-manager](<https://devfeed.tech/tags/swift-package-manager.md>), [update](<https://devfeed.tech/tags/update.md>)

### AI overview

Codename One adds built-in support for Java Stream APIs and Swift Package Manager integration for iOS dependencies, refreshes its written tutorial trail, and removes the UWP target from the Maven plugin in version 7.0.229.

### Source excerpt

Codename One now includes built-in java.util.stream support, adds Swift Package Manager support for iOS dependencies, refreshes the written tutorial trail, and removes the UWP target from the Maven plugin in 7.0.229.

## Grantee Roundup: April 2021

DevFeed: [Grantee Roundup: April 2021](<https://devfeed.tech/articles/grantee-roundup-april-2021-16959.md>)

Original publisher: [Read original article](<https://blog.ethereum.org/en/2021/05/03/esp-grantee-roundup-april-2021>)

Author: Ethereum Foundation Ecosystem Support Program

Published: 2021-05-03T00:00:00Z

Content type: article

Language: en

Sources: [Ethereum Foundation Blog](<https://devfeed.tech/sources/ethereum-foundation-blog.md>)

Topics: [Ethereum](<https://devfeed.tech/topics/ethereum.md>), [Development](<https://devfeed.tech/topics/development.md>), [Hackathon](<https://devfeed.tech/topics/hackathon.md>), [Solidity](<https://devfeed.tech/topics/solidity.md>), [Remix](<https://devfeed.tech/topics/remix.md>), [Java](<https://devfeed.tech/topics/java.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Dependency management](<https://devfeed.tech/topics/dependency-management.md>), [Library](<https://devfeed.tech/topics/library.md>), [migration](<https://devfeed.tech/topics/migration.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [dependency-management](<https://devfeed.tech/tags/dependency-management.md>), [development](<https://devfeed.tech/tags/development.md>), [ecosystem-support-program](<https://devfeed.tech/tags/ecosystem-support-program.md>), [ethereum](<https://devfeed.tech/tags/ethereum.md>), [hackathon](<https://devfeed.tech/tags/hackathon.md>), [java](<https://devfeed.tech/tags/java.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [library](<https://devfeed.tech/tags/library.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [migration](<https://devfeed.tech/tags/migration.md>), [projects](<https://devfeed.tech/tags/projects.md>), [remix](<https://devfeed.tech/tags/remix.md>), [smart-contract](<https://devfeed.tech/tags/smart-contract.md>)

### AI overview

This Ethereum Foundation grantee roundup reports on the Ethereum India Fellowship 2.0 and its training, mentorship, hackathon participation, and participant achievements. It also describes Web3 Labs' grant-supported work on Web3j, including documentation, Maven plugin updates, Solidity dependency management, and smart contract migration support.

### Source excerpt

It's always fun to hear about new grants as they're awarded, but what happens after the announcement? In this series, we'll check in on a couple of projects that are well underway - or already at the finish line. Read on to learn about some recent milestones and achievements by...

## Publish a Kotlin/Multiplatform library on Maven Central

DevFeed: [Publish a Kotlin/Multiplatform library on Maven Central](<https://devfeed.tech/articles/publish-a-kotlin-multiplatform-library-on-maven-central-22865.md>)

Original publisher: [Read original article](<https://medium.com/kodein-koders/publish-a-kotlin-multiplatform-library-on-maven-central-6e8a394b7030?source=rss----f311f45ef54---4>)

Author: Romain Boisselle

Published: 2021-03-09T15:02:47Z

Content type: tutorial

Language: en

Sources: [Kodein Koders - Medium](<https://devfeed.tech/sources/kodein-koders-medium.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Maven Central](<https://devfeed.tech/topics/maven-central.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [maven-central](<https://devfeed.tech/tags/maven-central.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [releases](<https://devfeed.tech/tags/releases.md>), [sonatype](<https://devfeed.tech/tags/sonatype.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

This tutorial explains how to publish a Kotlin Multiplatform library to Maven Central. It covers migrating from Bintray and JCenter, Maven Central's requirements for sources, documentation, POM files, and signatures, and the staging-repository complications that arise in multiplatform builds.

### Source excerpt

https://medium.com/media/1f069bfe70a66ec0f8528588ae5ee209/href In our last tutorial, Salomon showed you how to create a Kotlin Multiplatform Mobile library. Now that we have some code ready to be used by the community, let me show you how to publish your future releases to Maven Central. Before going into details about how to deploy your libs to Maven Central, I want to adress library developers who already have a library published on JCenter. This tutorial is also for you! Publishing on Bintray and JCenter was a choice most of us made, because it had less constraints and more flexibility. Now that they will be shutting down quite soon, we must migrate our publication workflow. Maven Central seems to be the right choice these days, but we need to deal with new requirements. Where Bintray was giving us some latitude on what we could upload and publish, Maven Central has always been more restrictive. Indeed, every uploaded artifact needs to be accompanied at least by the following items: A bundle of the sources of the artifact The documentation that goes with the artifact, in the JVM world this is the Javadoc. A well formatted POM file. For those who are not familiar with Maven, this is the description of your project, with its name, its version, its dependencies, etc, in an XML format And finally, every item needs to be signed to be accepted. Actually, these requirements are not that hard to fulfill, and Gradle provides almost everything we need to publish our artifacts smoothly, with 2 official plugins, maven-publish and signing. But... I told you : almost! When performing a publication, before being available on Maven Central, all your uploaded artifacts with maven-publish are generally stored and referenced in one staging repository that you need to validate as the final step of publishing. While this is true for standard JVM projects, this is not the case for Kotlin/Multiplatform ones. As Kotlin/Multiplatform developers, you may know that you need two machines to b

## My first maven plugin

DevFeed: [My first maven plugin](<https://devfeed.tech/articles/my-first-maven-plugin-27305.md>)

Original publisher: [Read original article](<https://blog.pchudzik.com/201905/maven-plugin/>)

Published: 2019-05-10T00:00:00Z

Content type: tutorial

Language: en

Sources: [Paweł Chudzik](<https://devfeed.tech/sources/pawe-chudzik.md>)

Topics: [Maven](<https://devfeed.tech/topics/maven.md>), [Development](<https://devfeed.tech/topics/development.md>), [Java](<https://devfeed.tech/topics/java.md>)

Tags: [how-to](<https://devfeed.tech/tags/how-to.md>), [java](<https://devfeed.tech/tags/java.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [plugin-development](<https://devfeed.tech/tags/plugin-development.md>)

### AI overview

A beginner tutorial on writing a custom Maven plugin. It covers the Maven plugin project packaging, required dependencies, Mojo goals and parameters, plugin logic, installation, declaration in a build, and verification.

### Source excerpt

In the past, I've been doing various things with maven. Some of them were standard, some were more complicated and a couple of them were complex. For those complex solutions, I felt like I needed a plugin but I've never had enough time to write it properly. In this post, I'm going to explore the basics of writing maven plugin. Read more

## Upgrading to Eclipse Photon

DevFeed: [Upgrading to Eclipse Photon](<https://devfeed.tech/articles/upgrading-to-eclipse-photon-22000.md>)

Original publisher: [Read original article](<http://blog.joda.org/2018/07/upgrading-to-eclipse-photon.html>)

Author: Stephen Colebourne (noreply@blogger.com)

Published: 2018-07-09T09:51:00Z

Content type: tutorial

Language: en

Sources: [Stephen Colebourne](<https://devfeed.tech/sources/stephen-colebourne.md>)

Topics: [ide](<https://devfeed.tech/topics/ide.md>), [Java](<https://devfeed.tech/topics/java.md>), [Java 9](<https://devfeed.tech/topics/java-9.md>), [modules](<https://devfeed.tech/topics/modules.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Code review](<https://devfeed.tech/topics/code-review.md>), [Test coverage](<https://devfeed.tech/topics/coverage.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [code-quality](<https://devfeed.tech/tags/code-quality.md>), [eclipse](<https://devfeed.tech/tags/eclipse.md>), [github](<https://devfeed.tech/tags/github.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [ide](<https://devfeed.tech/tags/ide.md>), [install](<https://devfeed.tech/tags/install.md>), [installations](<https://devfeed.tech/tags/installations.md>), [java](<https://devfeed.tech/tags/java.md>), [java-9](<https://devfeed.tech/tags/java-9.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [modules](<https://devfeed.tech/tags/modules.md>), [plugins](<https://devfeed.tech/tags/plugins.md>), [update](<https://devfeed.tech/tags/update.md>), [zip](<https://devfeed.tech/tags/zip.md>)

### AI overview

A personal guide to upgrading to Eclipse Photon, covering its improved separation of test and main classpaths, support for Java 9 modules and Java 10 local variable type inference, JUnit 5, and code coverage assistance. It also describes installation options and a locally built GEBIT fork of the m2e-code-quality plugin.

### Source excerpt

I use Eclipse as my Java IDE. And the new release, Photon is now out. Photon is a large release, with lots of new features. The most important is the separation of the test and main classpaths, which has always been a point of pain in the IDE. Now it just works as you would expect, and the Maven plugin M2E correctly sets it up: Note the darker colour of the src/test classpath elements. Support for Java 9 (modules) and Java 10 (local variable type inferenece) is also present, ready for Java 11 in September. You can also use JUnit 5. It even tries to help you reach 100% code coverage! All in all, I feel this is a release where upgrading will make a difference to everyday coding. I've upgraded my own Eclipse installations, and it all went pretty well. You can either start from a clean install (I prefer the basic IDE without plugins so I can choose which ones to add). Or you can add Photon as an update site, and let Eclipse update itself. One problem I had was the plugin that connects Maven (M2E) to Checkstyle (Eclipse-CS), known as m2e-code-quality. Fortunately, the team at GEBIT have been maintaining a fork of the original plugin. However, they don't release it in binary form. As such, I had to build the plugin locally (no big deal - its a simple build). To simplify the process however, I've created a repository on GitHub with my Eclipse setup files, and a binary zip of the GEBIT forked plugin. To use just the m2e-code-quality GEBIT fork, download the zip file and add it as an update site. Here are some instructions. Thank you Eclipse team for a great release! PS. I won't be answering "how to" questions about upgrading Eclipse or the eclipse-setup repository. There are plenty of other places to ask questions, such as Stack Overflow or the Eclipse Forums.

## Cluecumber Report Maven Plugin for Cucumber test reporting

DevFeed: [Cluecumber Report Maven Plugin for Cucumber test reporting](<https://devfeed.tech/articles/cluecumber-report-maven-plugin-for-cucumber-test-reporting-28068.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/cluecumber-reporting-plugin/>)

Author: Benjamin Bischoff Test Automation Engineer; Author; Speaker; Magician Github Profile Linkedin Profile

Published: 2017-11-16T00:00:00Z

Content type: article

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [Cucumber](<https://devfeed.tech/topics/cucumber.md>), [test](<https://devfeed.tech/topics/test.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Java](<https://devfeed.tech/topics/java.md>)

Tags: [css](<https://devfeed.tech/tags/css.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [html](<https://devfeed.tech/tags/html.md>), [images](<https://devfeed.tech/tags/images.md>), [java](<https://devfeed.tech/tags/java.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [monitoring](<https://devfeed.tech/tags/monitoring.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [quality-assurance](<https://devfeed.tech/tags/quality-assurance.md>), [release](<https://devfeed.tech/tags/release.md>), [reporting](<https://devfeed.tech/tags/reporting.md>), [test](<https://devfeed.tech/tags/test.md>)

### AI overview

The article explains why trivago replaced its existing Cucumber reporting Maven plugin and describes the design of the Cluecumber Report Plugin. The new plugin uses HTML templates and generates overview and scenario-detail pages from Cucumber JSON results.

### Source excerpt

We were not as happy as we could be with out Cucumber test reporting solution - so we decided to build a new and shiny one from scratch.

## Cucable Maven plugin for parallel execution of Cucumber scenarios

DevFeed: [Cucable Maven plugin for parallel execution of Cucumber scenarios](<https://devfeed.tech/articles/cucable-maven-plugin-for-parallel-execution-of-cucumber-scenarios-28071.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/cucable-plugin/>)

Author: Benjamin Bischoff Test Automation Engineer; Author; Speaker; Magician Github Profile Linkedin Profile

Published: 2017-06-30T00:00:00Z

Content type: tutorial

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [Cucumber](<https://devfeed.tech/topics/cucumber.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [test](<https://devfeed.tech/topics/test.md>), [Selenium](<https://devfeed.tech/topics/selenium.md>), [ci](<https://devfeed.tech/topics/ci.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [ci](<https://devfeed.tech/tags/ci.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [parallel](<https://devfeed.tech/tags/parallel.md>), [plugin](<https://devfeed.tech/tags/plugin.md>), [quality-assurance](<https://devfeed.tech/tags/quality-assurance.md>), [speed](<https://devfeed.tech/tags/speed.md>), [test](<https://devfeed.tech/tags/test.md>), [user-experience](<https://devfeed.tech/tags/user-experience.md>)

### AI overview

Trivago describes creating Cucable, a Maven plugin that splits Cucumber scenarios into smaller chunks for parallel execution. The article explains limitations of custom runners, tag-based execution, feature-based execution, and existing plugins, particularly for scenario outlines and CI automation.

### Source excerpt

Running Cucumber scenarios in parallel can be tricky, especially when a custom test runner is used. That's why we created Cucable - a Maven plugin to split test scenarios into smaller chunks that can be run at the same time.

## Don't use junit.framework

DevFeed: [Don't use junit.framework](<https://devfeed.tech/articles/don-t-use-junit-framework-37702.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/dont-user-junit-framework/>)

Author: Carlos Alexandro Becker

Published: 2014-12-14T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [Maven](<https://devfeed.tech/topics/maven.md>), [deprecated](<https://devfeed.tech/topics/deprecated.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [classes](<https://devfeed.tech/tags/classes.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [deprecated](<https://devfeed.tech/tags/deprecated.md>), [import](<https://devfeed.tech/tags/import.md>), [junit](<https://devfeed.tech/tags/junit.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [org](<https://devfeed.tech/tags/org.md>), [script](<https://devfeed.tech/tags/script.md>)

### AI overview

The article recommends replacing deprecated junit.framework imports with org.junit imports and preventing old imports from entering new code. It suggests using a Bash script for replacement and restrict-maven-plugin configuration to fail builds that contain the old imports.

### Source excerpt

Every once in a while I see somewhere a wrong import to the old, deprecated junit.framework instead of org.junit.

## Maven, Gems, and a JRuby Console for All

DevFeed: [Maven, Gems, and a JRuby Console for All](<https://devfeed.tech/articles/maven-gems-and-a-jruby-console-for-all-15762.md>)

Original publisher: [Read original article](<https://developer.squareup.com/blog/maven-gems-and-a-jruby-console-for-all>)

Author: Square Engineering

Published: 2013-07-02T16:03:00Z

Content type: tutorial

Language: en

Sources: [Square Corner Blog](<https://devfeed.tech/sources/square-corner-blog-medium.md>), [Square Corner Blog RSS Feed](<https://devfeed.tech/sources/square-corner-blog-rss-feed.md>)

Topics: [Maven](<https://devfeed.tech/topics/maven.md>), [Java](<https://devfeed.tech/topics/java.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>)

Tags: [dependencies](<https://devfeed.tech/tags/dependencies.md>), [embedded](<https://devfeed.tech/tags/embedded.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [java](<https://devfeed.tech/tags/java.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [packaging](<https://devfeed.tech/tags/packaging.md>), [ruby](<https://devfeed.tech/tags/ruby.md>)

### AI overview

A tutorial showing how to package an embedded JRuby console and its gem dependencies inside a Maven shaded JAR. It explains the Maven plugin configuration and demonstrates running the application in production without invoking JRuby while still allowing the console to access the configured gems.

### Source excerpt

We will show how to add a JRuby console to any maven project... with gems!