Install
$ agentstack add skill-jabrena-cursor-rules-java-111-java-maven-dependencies ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Add Maven dependencies for improved code quality
Add essential Maven dependencies that enhance code quality and safety through a consultative, question-driven approach. This is an interactive SKILL.
What is covered in this Skill?
- JSpecify: (nullness annotations,
providedscope) - Error Prone + NullAway: (enhanced static analysis with compile-time null checking)
- VAVR: (functional programming with Try/Either and immutable collections)
- ArchUnit: (architecture rule enforcement,
testscope)
Constraints
Before adding Maven dependencies, ensure the project is in a valid state. Use a consultative, question-driven flow that adds only what the user selects.
- MANDATORY: Run
./mvnw validateormvn validatebefore any changes - SAFETY: If validation fails, stop and ask the user to fix issues—do not proceed until resolved
- BEFORE READING DEPENDENCY REFERENCES: Run the question flow embedded in this SKILL.md first. Ask one consolidated dependency-selection question, then ask only conditional follow-up questions required by the selected options. Read only the dependency references selected by the user's answers. Use consultative language, present trade-offs, and wait for user responses before implementing
When to use this skill
- Add Maven dependencies
- Add JSpecify nullness dependencies
- Add Error Prone NullAway dependencies
- Add VAVR functional dependencies
- Add ArchUnit architecture testing dependencies
Workflow
- Validate project before changes
Run ./mvnw validate or mvn validate and stop if validation fails.
- Ask dependency assessment questions before reading references
Run this XML-included question flow before reading any dependency implementation reference. Ask the consolidated dependency-selection question first, wait for the user's answer, and record selected dependency families before continuing. Ask conditional follow-up questions only when required by the selected dependencies.
Question 1: Which code-quality dependencies do you want to add?
Options:
- JSpecify (modern nullness annotations,
providedscope; recommended for new projects) - Error Prone + NullAway (enhanced compiler analysis and compile-time nullness checking; requires JSpecify)
- VAVR (functional programming support with Try/Either and immutable collections)
- ArchUnit (architecture testing with JUnit 5,
testscope) - None
- Other (specify)
Recommendation: Select JSpecify for better null-safety annotations. Add Error Prone + NullAway when you want stronger compile-time analysis. Add VAVR only when functional programming patterns are useful for the project. Add ArchUnit when you want automated architecture governance.
Selection notes:
- If Error Prone + NullAway is selected, also select JSpecify unless the project already has equivalent nullness annotations configured.
- If None is selected, do not add dependency-family references.
Question 2 (conditional): What is your main project package name?
Note: This question is asked only if Error Prone + NullAway was selected.
This is needed to configure NullAway to analyze your code. For example, if your classes are in com.example.myproject, enter com.example.myproject.
Format: Use dot notation (e.g., com.example.myproject or org.mycompany.myapp)
Example: com.example.myproject
After all applicable questions are answered, confirm the selections and map them to references:
- If JSpecify is selected, read
references/111-java-maven-dependencies-jspecify.md. - If enhanced compiler analysis is selected, use the Error Prone + NullAway section from
references/111-java-maven-dependencies-jspecify.md. - If VAVR is selected, read
references/111-java-maven-dependencies-vavr.md. - If ArchUnit is selected, read
references/111-java-maven-dependencies-archunit.md. - Do not read or apply unselected dependency-family references.
- Read selected references and add only selected dependencies
Read only the selected dependency-family references, then implement only the dependencies, properties, scopes, plugin configuration, and support files chosen by the user while preserving the existing pom.xml structure.
- Report trade-offs and next checks
Summarize what was added, why, and any recommended follow-up validations or tooling alignment.
Reference
For detailed guidance, examples, and constraints, see:
- [references/111-java-maven-dependencies-jspecify.md](references/111-java-maven-dependencies-jspecify.md)
- [references/111-java-maven-dependencies-vavr.md](references/111-java-maven-dependencies-vavr.md)
- [references/111-java-maven-dependencies-archunit.md](references/111-java-maven-dependencies-archunit.md)
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jabrena
- Source: jabrena/cursor-rules-java
- License: Apache-2.0
- Homepage: https://jabrena.github.io/cursor-rules-java/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.