关于 maven-indexer
maven-indexer 是面向命令行的技能,用于检查本地 Maven 和 Gradle 缓存中的 Java 依赖。开发者可借此定位制品、查看类实现和查找内嵌资源,避免依赖猜测。
主要功能
- 01按类名或关键词搜索缓存制品
- 02读取签名、Javadoc 或源码
- 03查找 SPI 实现和子类
- 04定位 JAR 内嵌资源
- 05输出结构化 JSON
适用场景
- 01追踪导入类所属的依赖制品
- 02检查依赖类的方法或源码
- 03查找接口的实现类
- 04定位缓存 JAR 中的 proto 文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ tangcent/ maven-indexer-cli --skill maven-indexer安装后在 Claude Code 中输入/maven-indexer确认已加载。
详细介绍
Maven Indexer
使用 maven-indexer-cli 搜索和检查本地 Maven/Gradle 缓存中的 Java 类、构件和资源。
何时启用
遇到以下情况时使用此工具:
- 看到导入语句(例如
com.company.util.Helper),但在工作区中找不到定义——它可能来自已编译的内部库 - 需要阅读内部库或不太知名的库的实际实现(“不要猜测内部库的行为——阅读代码”)
- 需要查找包含给定类的构件
- 需要获取依赖类的方法签名、Javadoc 或完整源代码
- 需要查找接口的实现类或基类的子类(例如 SPI 实现类)
- 需要定位 JAR 中嵌入的 proto 文件或其他资源
以下情况跳过:
- 类来自标准 Java 库(
java.util、java.io等),或来自 AI 已经熟知的知名公共库 - 当前工作区中已存在源代码
先检查索引
如果索引可能为空或已过期,请先构建索引:
# Quick scan — one best version per artifact (fast, recommended)
maven-indexer-cli refresh-index
# Full scan — all versions of all artifacts
maven-indexer-cli refresh-index --full
命令
search-classes — 查找包含某个类的构件
看到导入语句但找不到定义时必用。不要因为代码可以编译,就假设源代码在本地。
maven-indexer-cli search-classes <className>
# Examples:
maven-indexer-cli search-classes StringUtils
maven-indexer-cli search-classes com.company.util.Helper
maven-indexer-cli search-classes JsonToXml # keyword search also works
get-class — 阅读实际实现
用它来代替猜测。优先使用源代码 JAR,否则回退到反编译。
# Method signatures (default)
maven-indexer-cli get-class <className>
# Javadocs + method signatures
maven-indexer-cli get-class <className> --type docs
# Full source code
maven-indexer-cli get-class <className> --type source
# From a specific artifact version
maven-indexer-cli get-class <className> --coordinate groupId:artifactId:version
search-artifacts — 按坐标或关键字查找构件
maven-indexer-cli search-artifacts <query>
# Examples:
maven-indexer-cli search-artifacts guava
maven-indexer-cli search-artifacts com.google.guava
search-implementations — 查找 SPI 实现类和子类
对于查找内部公司库中的 SPI 实现类或基类的子类尤其有用。
maven-indexer-cli search-implementations <className>
# Examples:
maven-indexer-cli search-implementations java.util.List
maven-indexer-cli search-implementations com.example.spi.Handler
search-resources — 查找 proto 文件和其他 JAR 资源
maven-indexer-cli search-resources <pattern>
# Examples:
maven-indexer-cli search-resources .proto
maven-indexer-cli search-resources log4j.xml
输出
所有命令都支持使用 --json 获取结构化输出:
maven-indexer-cli search-classes ImmutableList --json
maven-indexer-cli get-class com.google.common.collect.ImmutableList --json
如果找不到
maven-indexer-cli,请安装:npm install -g maven-indexer-cli
评论
支持 Markdown