PMDは拡張可能な多言語静的コード分析ツールで、主にJavaやApexなどの言語の一般的なプログラミング欠陥を検出するために使用されます。16種類の言語と400以上の組み込みルールをサポートし、重複コード検出機能も備えています。
2ポイント
9.1K

PMDとは?

PMDは強力な静的コード分析ツールで、実際にプログラムを実行することなく、ソースコードをスキャンして潜在的な問題や不良な実装を発見します。経験豊富なコードレビュー担当者のように、コード内の様々な問題を自動的に識別し、開発者がより高品質で保守しやすいコードを作成するのに役立ちます。

PMDの使い方は?

PMDはさまざまな使用方法を提供しています。バイナリパッケージを直接ダウンロードしてコマンドラインで実行することもできますし、MavenやGradleなどのビルドツールに統合することもできます。また、さまざまなIDEにプラグインとしてインストールすることも可能です。基本的な使用手順は、ダウンロードとインストール、ルールの設定、分析の実行、レポートの確認です。

適用シナリオ

PMDは以下のシナリオに特に適しています: 1. チームのコード品質保証 2. コードレビューの自動化 3. コーディング規約の強制実行 4. 技術的負債の識別 5. 新人のコード品質トレーニング 6. 継続的インテグレーションフローにおける品質ゲート

主要機能

多言語サポート
Java、JavaScript、Kotlin、Swift、Python、Goなど17種類のプログラミング言語をサポートし、さまざまな技術スタックのニーズを満たします。
豊富なルールライブラリ
400以上のコードチェックルールが組み込まれており、コード品質、パフォーマンス、セキュリティ、ベストプラクティスなどのさまざまな側面をカバーしています。
コード重複検出(CPD)
組み込みのCopy - Paste Detectorにより、コード内の重複部分を自動的に識別し、コードの冗長性を減らすのに役立ちます。
拡張性
カスタムルールの開発をサポートしており、Javaで作成するか、XPathクエリを使用して特定のニーズに合ったチェックルールを作成することができます。
複数の統合方法
コマンドラインツール、ビルドツールプラグイン、IDEプラグインなど、さまざまな使用方法を提供し、さまざまな開発ワークフローに対応します。
オープンソース無料
完全にオープンソースで無料です。BSDライセンスを採用しており、自由に使用、変更、配布することができます。
利点
複数のプログラミング言語をサポートし、適用範囲が広い
ルールが豊富で継続的に更新される
オープンソースで無料で、コミュニティが活発である
既存の開発フローに容易に統合できる
詳細なエラーレポートと修正提案を提供する
カスタムルールの拡張をサポートする
制限
一部の言語に対するサポートは専用ツールほど充実していない場合がある
すべてのルールを理解するには一定の学習コストが必要になる可能性がある
誤検知率はプロジェクトの実際の状況に応じて調整する必要がある
大規模なプロジェクトの分析には時間がかかる可能性がある

使い方

ダウンロードとインストール
GitHub Releasesページから最新バージョンのバイナリパッケージをダウンロードし、ローカルディレクトリに解凍します。
基本的な使用方法
コマンドラインツールを使用してソースコードディレクトリを分析し、使用するルールセットを指定します。
コード重複検出
CPD機能を使用してコード内の重複部分を検出します。
ビルドツールへの統合
MavenまたはGradleの設定にPMDプラグインを追加し、自動化されたコードチェックを実現します。

使用例

Javaプロジェクトのコード品質チェック
Java Webプロジェクトに対して、コード規約、パフォーマンス問題、潜在的なバグなど、包括的なコード品質チェックを行います。
JavaScriptコードの重複検出
フロントエンドのJavaScriptプロジェクト内に重複するコード部分がないかチェックし、コード構造を最適化します。
チームのコーディング規約チェック
カスタムルールセットを使用して、チームが特定のコーディング規約を遵守しているかチェックします。

よくある質問

PMDとSonarQubeの違いは何ですか?
誤検知を減らすにはどうすればいいですか?
PMDはどのIDEをサポートしていますか?
カスタムルールを作成するにはどうすればいいですか?
PMDで大規模なプロジェクトを分析すると遅くなりますか?

関連リソース

公式ドキュメント
完全なPMDの使用ドキュメントとAPIリファレンス
GitHubリポジトリ
PMDのソースコードと問題追跡
オンラインディスカッションエリア
ユーザーの議論と技術交流
Stack Overflowタグ
技術的な質問と回答
PMD Guru
AIアシスタントによるPMD関連問題の解決支援
Dockerイメージ
公式のDockerイメージ

インストール

以下のコマンドをクライアントにコピーして設定
注意:あなたのキーは機密情報です。誰とも共有しないでください。

代替品

V
Vestige
Vestigeは認知科学に基づくAI記憶エンジンで、予測誤差ゲート、FSRS - 6間隔反復、記憶の夢など29の神経科学モジュールを実装することで、AIに長期記憶能力を提供します。3D可視化ダッシュボードと21のMCPツールを備え、完全にローカルで動作し、クラウドは必要ありません。
Rust
9.0K
4.5ポイント
M
Moltbrain
MoltBrainは、OpenClaw、MoltBook、Claude Code用に設計された長期記憶層プラグインで、自動的にプロジェクトのコンテキストを学習し、思い出すことができます。スマートな検索、観察記録、分析統計、永続的なストレージ機能を提供します。
TypeScript
10.8K
4.5ポイント
B
Bm.md
機能豊富なMarkdown排版ツールで、様々なスタイルテーマとプラットフォーム対応をサポートし、リアルタイム編集プレビュー、画像エクスポート、API統合機能を提供します
TypeScript
17.5K
5ポイント
S
Security Detections MCP
Security Detections MCPは、Model Context Protocolに基づくサーバーで、LLMがSigma、Splunk ESCU、Elastic、KQL形式を含む統一されたセキュリティ検出ルールデータベースをクエリできます。最新のバージョン3.0は自律型検出エンジニアリングプラットフォームにアップグレードされ、自動的に脅威インテリジェンスからTTPを抽出し、カバレッジのギャップを分析し、SIEMネイティブ形式の検出ルールを生成し、テストを実行して検証できます。プロジェクトには71以上のツール、11の事前構築されたワークフロープロンプト、および知識グラフシステムが含まれ、複数のSIEMプラットフォームをサポートしています。
TypeScript
8.2K
4ポイント
P
Paperbanana
Python
10.5K
5ポイント
B
Better Icons
20万以上のアイコンの検索と検索を提供するMCPサーバーとCLIツールで、150以上のアイコンライブラリをサポートし、AIアシスタントと開発者が迅速にアイコンを取得して使用できるように支援します。
TypeScript
9.1K
4.5ポイント
A
Assistant Ui
assistant-uiは、生産レベルのAIチャットインターフェイスを迅速に構築するためのオープンソースのTypeScript/Reactライブラリで、組み合わせ可能なUIコンポーネント、ストリーミング応答、アクセシビリティなどの機能を提供し、複数のAIバックエンドとモデルをサポートしています。
TypeScript
10.6K
5ポイント
A
Apify MCP Server
Apify MCPサーバーは、モデルコンテキストプロトコル(MCP)に基づくツールで、AIアシスタントが数千の既成のクローラー、スクレイパー、自動化ツール(Apifyアクター)を通じて、ソーシャルメディア、検索エンジン、電子商取引などのウェブサイトからデータを抽出できるようにします。OAuthとSkyfireプロキシ支払いをサポートしており、HTTPSエンドポイントまたはローカルのstdio方式でClaude、VS CodeなどのMCPクライアントに統合できます。
TypeScript
10.7K
5ポイント
E
Edgeone Pages MCP Server
EdgeOne Pages MCPは、MCPプロトコルを通じてHTMLコンテンツをEdgeOne Pagesに迅速にデプロイし、公開URLを取得するサービスです。
TypeScript
26.5K
4.8ポイント
G
Gmail MCP Server
Claude Desktop用に設計されたGmail自動認証MCPサーバーで、自然言語でのやり取りによるGmailの管理をサポートし、メール送信、ラベル管理、一括操作などの完全な機能を備えています。
TypeScript
21.5K
4.5ポイント
C
Context7
Context7 MCPは、AIプログラミングアシスタントにリアルタイムのバージョン固有のドキュメントとコード例を提供するサービスで、Model Context Protocolを通じてプロンプトに直接統合され、LLMが古い情報を使用する問題を解決します。
TypeScript
90.0K
4.7ポイント
B
Baidu Map
認証済み
百度マップMCPサーバーは国内初のMCPプロトコルに対応した地図サービスで、地理コーディング、ルート計画など10個の標準化されたAPIインターフェースを提供し、PythonとTypescriptでの迅速な接続をサポートし、エージェントに地図関連の機能を実現させます。
Python
40.8K
4.5ポイント
G
Gitlab MCP Server
認証済み
GitLab MCPサーバーは、Model Context Protocolに基づくプロジェクトで、GitLabアカウントとのやり取りに必要な包括的なツールセットを提供します。コードレビュー、マージリクエスト管理、CI/CD設定などの機能が含まれます。
TypeScript
25.7K
4.3ポイント
U
Unity
認証済み
UnityMCPはUnityエディターのプラグインで、モデルコンテキストプロトコル (MCP) を実装し、UnityとAIアシスタントのシームレスな統合を提供します。リアルタイムの状態監視、リモートコマンドの実行、ログ機能が含まれます。
C#
32.8K
5ポイント
M
Magic MCP
Magic Component Platform (MCP) はAI駆動のUIコンポーネント生成ツールで、自然言語での記述を通じて、開発者が迅速に現代的なUIコンポーネントを作成するのを支援し、複数のIDEとの統合をサポートします。
JavaScript
21.4K
5ポイント
S
Sequential Thinking MCP Server
MCPプロトコルに基づく構造化思考サーバーで、思考段階を定義することで複雑な問題を分解し要約を生成するのに役立ちます。
Python
33.6K
4.5ポイント
AIBase
智啓未来、あなたの人工知能ソリューションシンクタンク
© 2026AIBase