mcpField
M
maven-indexer

maven-indexer

github.com/tangcent开发336 次安装12 周前更新
代码仓库

关于 maven-indexer

maven-indexer 是面向命令行的技能,用于检查本地 Maven 和 Gradle 缓存中的 Java 依赖。开发者可借此定位制品、查看类实现和查找内嵌资源,避免依赖猜测。

主要功能

  1. 01按类名或关键词搜索缓存制品
  2. 02读取签名、Javadoc 或源码
  3. 03查找 SPI 实现和子类
  4. 04定位 JAR 内嵌资源
  5. 05输出结构化 JSON

适用场景

  1. 01追踪导入类所属的依赖制品
  2. 02检查依赖类的方法或源码
  3. 03查找接口的实现类
  4. 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