Managing Maven / JAR Dependencies
SkillDev toolsLets your agent add, update, remove and audit a Mendix module's Java dependencies in Studio Pro settings.
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the Managing Maven / JAR Dependencies skill
About this skill
Add, update, remove and audit a module's Maven/JAR dependencies in MDL, Studio Pro's Module Settings → Java dependencies tab. Use when a Java action needs an external library, when bumping a library version, or when auditing which modules pull what.
What this skill tells your AI
The instructions your AI receives, as published by mendixlabs/mxcli in .claude/skills/mendix/java-dependencies/SKILL.md and read by ahel’s review.
This skill explains how to add, update, and remove Maven/JAR dependencies in a
Mendix module using MDL. These are the dependencies declared in Studio Pro's
Module Settings → Java dependencies tab, stored as
Projects$JarDependency entries inside the module's Projects$ModuleSettings
unit.
When to Use This Skill
- Adding a new external library for a Java action (Jackson, Apache HTTP client, etc.)
- Updating a library version across modules
- Disabling a dependency without removing it (
included = false) - Auditing which modules have JAR dependencies
If you only need to copy JARs into vendorlib/ for a local build (without
registering them in module settings), that is a different operation and does
NOT require MDL.
Listing Dependencies
-- All modules
LIST JAR DEPENDENCIES;
-- Single module
LIST JAR DEPENDENCIES IN MyModule;
Output columns: module, group, artifact, version, included.
Describing a Dependency
DESCRIBE JAR DEPENDENCY MyModule 'com.fasterxml.jackson.core:jackson-databind';
Outputs a re-executable ALTER MODULE ... ADD JAR DEPENDENCY (...) block.
Adding a Dependency
ALTER MODULE MyModule
ADD JAR DEPENDENCY (
group = 'com.fasterxml.jackson.core',
artifact = 'jackson-databind',
version = '2.21.2',
included = true,
);
includeddefaults totruewhen set explicitly; always set it to be explicit.- The coordinate
group:artifactmust be unique within the module.
Updating a Dependency
-- Change the version
ALTER MODULE MyModule
SET JAR DEPENDENCY 'com.fasterxml.jackson.core:jackson-databind' VERSION '2.21.3';
-- Disable without removing (keeps the entry, classpath excluded at build time)
ALTER MODULE MyModule
SET JAR DEPENDENCY 'com.fasterxml.jackson.core:jackson-databind' INCLUDED false;
Managing Transitive Exclusions
-- Exclude a transitive dependency
ALTER MODULE MyModule
SET JAR DEPENDENCY 'org.duckdb:duckdb_jdbc'
ADD EXCLUSION 'com.example:conflicting-lib';
-- Remove an exclusion
ALTER MODULE MyModule
SET JAR DEPENDENCY 'org.duckdb:duckdb_jdbc'
DROP EXCLUSION 'com.example:conflicting-lib';
Removing a Dependency
ALTER MODULE MyModule
DROP JAR DEPENDENCY 'com.fasterxml.jackson.core:jackson-databind';
Jackson Version Gotcha
Jackson 2.x and 3.x use different package namespaces:
| Version | Group ID | Import prefix |
|---|---|---|
| 2.x | com.fasterxml.jackson.core | com.fasterxml.jackson.* |
| 3.x | tools.jackson.core | tools.jackson.* |
If Java code imports com.fasterxml.jackson.databind.* you need 2.x.
Pin to the version the Mendix runtime bundles to avoid classloader conflicts:
ls ~/.mxcli/mxbuild/<runtime-version>/runtime/bundles/ | grep jackson
After Adding a Dependency
MDL writes the Projects$JarDependency entry into the .mpr file. Gradle
still needs to resolve and download the JAR:
- Open the project in Studio Pro — it will trigger Gradle to populate
vendorlib/. - Or run
mxcli docker buildwhich invokesmxand triggers the Gradle sync.
Until Gradle runs, the JAR is declared but not yet present in vendorlib/.
This is the same state as adding a dependency in Studio Pro before clicking OK.
Coordinate Format
Coordinates use the group:artifact format (no version):
'com.fasterxml.jackson.core:jackson-databind'
'org.duckdb:duckdb_jdbc'
The version is stored separately and shown in LIST JAR DEPENDENCIES output.
Related Skills
- java-actions — authoring Java actions
- project-settings — other module/project settings
Signals
- GitHub stars
- 122
- Forks
- 49
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Key
java-dependencies- Source
- github.com/mendixlabs/mxcli