maven-indexer について
maven-indexerは、ローカルのMavenおよびGradleキャッシュ内のJava依存関係を調べるコマンドライン向けスキルです。開発者がアーティファクトやクラスの実装、JAR内のリソースを特定できます。
主な機能
- 01クラス名やキーワードでキャッシュ内を検索
- 02シグネチャ、Javadoc、ソースの取得
- 03SPI実装やサブクラスの検索
- 04JAR内リソースの検索
- 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 対応