Qodana 2024.1 ヘルプ

JVM 用 Qodana

official project

Java, Kotlin, Groovy

JVM の Qodana は IntelliJ IDEA Ultimate に基づいています。IntelliJ IDEA Ultimate のすべての機能が組み込まれており、次のことに役立ちます。

  • 異常なコードと潜在的なバグを検出する

  • デッドコードを削除する

  • スペルの問題をハイライトする

  • 全体的なコード構造を改善する

  • コーディングのベストプラクティスを紹介する

  • インスペクションの結果を Qodana クラウドにアップロードする

JVM 用 Qodana は、Java 用インスペクション、Kotlin、Groovy を提供します。

サポートされているテクノロジー

JVM 用 Qodana は、次のテクノロジ用にインスペクションを提供します。

プログラミング言語

Java

Kotlin

Groovy

マークアップ言語

CSS

FreeMarker テンプレート言語

HTML

JSON および JSON5

RELAX NG

XML

XPath

XSLT

YAML

スクリプト言語

式言語 (EL)

シェルスクリプト

データベースと ORM

Hibernate ORM

MongoDB

Oracle

MySQL

PostgreSQL

SQL

SQL サーバー

ビルド管理

Ant

Gradle

Maven

フレームワークおよびライブラリ

Jakarta EE

Java EE

JavaBeans

JAX-RS

JPA

JSP

JUnit

Lombok

Reactive Streams

Spring

TestNG

サポートされている機能

JVM リンターの Qodana は、次の Qodana 機能を提供します。

フィーチャー

ライセンスに基づいて利用可能

ベースライン

Ultimate と Ultimate Plus

コードカバレッジ

Ultimate と Ultimate Plus

FlexInspect

Ultimate と Ultimate Plus

ライセンス監査

Ultimate Plus

クオリティゲート

Ultimate と Ultimate Plus

クイックフィックス

Ultimate と Ultimate Plus

脆弱性チェッカー

Ultimate Plus

やってみよう

プロジェクトをローカルで分析する

分析を実行できるようにするには、プロジェクトが適切に構築され、目的の環境で実行できることを確認します。つまり、JRE が適切に構成され、プロジェクトの依存関係がインストールされ、ビルドスクリプトまたは起動タスクが実行されます。

Qodana には、コードのローカル分析のための 2 つのオプションが用意されています。Qodana CLI(英語) は最も簡単に開始できるオプションです。あるいは、「Docker イメージ」タブから Docker コマンドを使用することもできます。

マシンに Qodana CLI がすでにインストールされている(英語)と仮定すると、プロジェクトのルートディレクトリで次のコマンドを実行できます。

qodana scan \ -e QODANA_TOKEN="<cloud-project-token>" \ -l jetbrains/qodana-jvm:2024.1

ここで、QODANA_TOKEN 変数はプロジェクトトークンを参照します。

まず、Docker Hub からイメージをプルします (最新バージョンを取得する場合にのみ必要です)。

docker pull jetbrains/qodana-jvm:2024.1

source-directory がプロジェクトのルートを指し、QODANA_TOKENプロジェクトトークンを参照して、ローカル分析を開始します。

docker run \ -v <source-directory>/:/data/project/ \ -e QODANA_TOKEN="<cloud-project-token>" \ jetbrains/qodana-jvm:2024.1

ブラウザーで Qodana クラウド(英語)を開き、インスペクションの結果を調べます。ここで分析を再構成することもできます。詳細については、インスペクションレポートセクションを参照してください。

次のステップ

関連ページ:

Qodana クラウド

Qodana を複数のプロジェクトまたはリポジトリで実行する場合、特にコードベースが複数のサーバーと仮想プライベートネットワークに分散されていて、各チームが独立して作業している場合は、すべての分析レポートを 1 か所に読み込んで集約すると便利です。このような場合、すべての Qodana インスタンスからレポート情報を収集して表示するための集中型ソリューションが役立ちます。Qodana クラウドは、さまざまな Qodana レポートを蓄積し、プロジェクトの進捗状況を一元的に追跡するのに役立つクラウ...

プロジェクトトークン

一般に利用可能な有料リンターでは、Qodana の実行中に変数を使用してプロジェクトトークンを提供する必要があります。例:qodana scan \ -e QODANA_TOKEN="<qodana-cloud-token>"docker run \ -v $(pwd):/data/project/ \ -e QODANA_TOKEN="<qodana-cloud-token>" \ jetbrains/qodana-<linter> 変数には、Qodana リ...

ベースライン

ベースラインは、特定の Qodana 実行時に取得され、ファイルに含まれているコードベースの問題のスナップショットです。ベースライン機能を使用すると、現在のコードとベースラインの状態を比較し、新しい問題、変更されていない問題、解決された問題を確認できます。この機能は、Community、Ultimate、Ultimate Plus ライセンスとその試用版で利用可能なすべてのリンターでサポートされています。使い方:ベースラインなしで Qodana を実行すると、現在の実行時に検出された問題を確認...

コードカバレッジ

コードカバレッジは、生成されたレポートを使用して、メソッド、クラス、ファイル内の全体的なコードカバレッジを計算します。また、これらのエンティティにおけるカバレッジの不足に関連する問題についても報告します。この機能は、次のリンターの Ultimate および Ultimate Plus ライセンスで利用できます。JVM 用 QodanaIntelliJ IDEA コードカバレッジエージェントが推奨ツールですが推奨される形式です。もサポートされています。JaCoCoJS 用 QodanaJestPHP...

FlexInspect

IntelliJ IDEA のバージョン 2024.1 以降では、IntelliJ API と Kotlin を使用して、プロジェクト固有の独自のインスペクションを開発できます。次のことが可能です。ソースコードの PSI 表現にアクセスします。新しいインスペクションをオンザフライでデバッグします。期待どおりに動作しないコードフラグメントのハイライトなど、新しいカスタムインスペクションの動作を観察します。FlexInspect を使用すると、すべての IntelliJ IDEA および Qodana イ...

ライセンス監査

プロジェクトのライセンスが依存関係のライセンスと互換性があることを確認するのは決して簡単な作業ではありませんが、これは法的な目的のために必要です。このプロセスを自動化して間違いを避けるために、現在いくつかの Qodana リンターによってサポートされているライセンス監査機能を使用できます。JVM 用 QodanaMaven および GradlePHP 用の QodanaComposerJS 用 Qodananpm および YarnPython 用 QodanapipGo 用 QodanaGo モ...