Qodana 2026.1 ヘルプ

クイックスタート

現行バージョンの Qodana(2026.1)では、様々なプログラミング言語や技術を用いたソフトウェアを解析できます。また、利用可能な機能を使って、デフォルトの Qodana 設定を拡張することも可能です。

例として、このセクションでは、以下を使用して Qodana の操作をすぐに開始できる方法について説明します。

前提条件

Qodana Cloud でプロジェクトを設定する

Qodana を実行する前に、Qodana クラウド(英語)に新しい組織プロジェクトを作成する必要があります。このセットアッププロセスでは、さまざまな CI/CD パイプラインおよび Qodana CLI(英語) または JetBrains IDE を使用したローカル実行用にプロジェクトを構成する手順が示され、Qodana リンターに必要なプロジェクトトークンが生成されます。さらに、Qodana では、ライセンス契約(英語)で指定されているように、アクティブなコントリビューターを追跡するためにリポジトリへの接続が必要です。

プロジェクトのセットアップでは、ライセンスや会社などの JetBrains アカウントの情報が使用されます。

GitHub アクション

Qodana スキャン GitHub アクションを GitHub でホストされているリポジトリで実行する場合は、プロジェクト設定時に Qodana App をインストールする必要があります。

Authorize Qodana GitHub App

この GitHub アプリケーションは、以下のデータをリポジトリに一度だけプッシュします。

分析対象のリポジトリへのアクセス権がない場合は、必要なアクセス権を申請し、承認されるまでお待ちください。それ以外の場合は、プロジェクトで Qodana を起動するための手順と設定スニペットが提供されます。

グローバル構成

プロジェクトのセットアップ段階で、コードの分析中に使用されるグローバル構成を選択できます。

ネイティブモード

ネイティブモードは Qodana の Docker コンテナーと互換性がないため、Qodana は Docker コンテナーとして、またはネイティブモードで実行する必要があります。

コマンドラインを使用して Qodana をネイティブモードで実行したい場合は、実行するマシンに Qodana CLI をインストールしてください

Qodana をネイティブモードに設定するために使用できるテクノロジーの一覧は以下のとおりです。

言語

リンター名

Java、Kotlin、Groovy、JavaScript、TypeScript

qodana-jvm および qodana-jvm-community

PHP、JavaScript、TypeScript

qodana-php

JavaScript and TypeScript

qodana-js

C#、F#、VB.NET、JavaScript、TypeScript、C、C++

qodana-dotnet

Python、JavaScript、TypeScript

qodana-python および qodana-python-community

Go

qodana-go

.NET ネイティブモード

お使いのコンピューターに適切なバージョンの .NET SDK と必要な依存関係がすべてインストールされていることを確認してください。

Qodana を使用してインスペクションする前にプロジェクトをビルドします。これは、 qodana.yaml ファイルの bootstrap キーを使用して実行できます。プロジェクトのビルドとアーティファクトのパッケージ化の段階は、Qodana の前、または同時に実行する必要があります。Qodana を実行するとプロジェクトの状態とそのファイルに影響する可能性があるため、ビルドパイプラインで同じディレクトリを再利用することは避けることをお勧めします。

また、Qodana にビルド済みのプロジェクトを提供したり、CI/CD パイプラインでビルド手順を指定したりすることもできます。プロジェクトのビルドに関連する警告を削除するには、リポジトリに空の qodana.yaml ファイルを作成します。

また、qodana-dotnet リンターはプロジェクトをビルドするのと同じマシンで実行することをお勧めします。これにより、Qodana がプライベートな NuGet フィードにアクセスできることが保証されます。

コンテナーモード

コンテナーモードは、Docker アプリケーションがマシンにデプロイされていることを前提としています。

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

docker pull <image>

ここで、image は、この表の Docker イメージ名を表します。

リンター

Docker イメージ

Java、Kotlin、Groovy、JavaScript、TypeScript

jetbrains/qodana-jvm:2026.1

jetbrains/qodana-jvm-community:2026.1

jetbrains/qodana-jvm-android:2026.1

jetbrains/qodana-android:2026.1

PHP、JavaScript、TypeScript

jetbrains/qodana-php:2026.1

JavaScript and TypeScript

jetbrains/qodana-js:2026.1

C#、C/C++、VB.NET、JavaScript、TypeScript、F#

jetbrains/qodana-dotnet:2026.1<-privileged>

jetbrains/qodana-cdnet:2026.1-eap<-privileged>

Python、JavaScript、TypeScript

jetbrains/qodana-python:2026.1

jetbrains/qodana-python-community:2026.1

Golang、JavaScript、TypeScript

jetbrains/qodana-go:2026.1

Ruby、JavaScript、TypeScript

jetbrains/qodana-ruby:2026.1-eap<-ruby3.X><-privileged>

C および C++

jetbrains/qodana-clang:2026.1-eap<-clangXX>

jetbrains/qodana-cpp:2026.1<-clangXX><-privileged>

Rust

jetbrains/qodana-rust:2026.1-eap

この表には、事前に設定された Qodana イメージを取得するためのオプションのタグが含まれています。

  • -clangXX タグは、Clang-Tidy(英語) のバージョンを 15 から 18 に設定します。

  • -ruby3.X タグは、Ruby のバージョンを 3.1 から 3.4 まで設定します。指定がない場合は、バージョン 3.4 が使用されます。

    -privileged タグを使用すると、Qodana を特権モードで実行して、root アクセスを必要とするコマンドを実行できます。この場合、Qodana には root 権限を持ち、パスワードを必要としないデフォルトの qodana ユーザーが付属しています。該当する場合、このタグを使用するには、-clangXX タグと -ruby3.X タグの設定が必要です。

Qodana CLI

コマンドラインインターフェースを使用する場合、ネイティブモードコンテナーモードの両方に適した Qodana CLI は、Qodana を実行する最も簡単な方法です。

Qodana CLI をデフォルトモードで実行するには、Docker または Podman がインストールされ、ローカルで実行されている必要があります。Linux を使用している場合は、現在の非 root ユーザー(英語)で Docker を実行できるはずです。

利用可能なオプションを使用して、Qodana CLI をマシンにインストールします。

Homebrew(英語) を使用してインストールします (推奨):

brew install jetbrains/utils/qodana

あるいは、インストーラーを使用して Qodana CLI をインストールすることもできます。

curl -fsSL https://jb.gg/qodana-cli/install | bash

nightly またはその他のバージョンは、次の方法でインストールできます。

curl -fsSL https://jb.gg/qodana-cli/install | bash -s -- nightly

Linux では、Go(英語) を使用して Qodana をインストールすることもできます。

go install github.com/JetBrains/qodana-cli@latest

Windows パッケージマネージャーを使用してインストールします (推奨):

winget install -e --id JetBrains.QodanaCLI

Chocolatey(英語) を使用してインストールします。

choco install qodana

Scoop(英語) を使用してインストールします。

scoop bucket add jetbrains https://github.com/JetBrains/scoop-utils scoop install qodana

異なる Docker コンテキストまたは Podman

Qodana は、コンテナーエンジンとの通信に Docker CLI を使用し、実行時に有効になっている Docker コンテキストを採用します。例: コンテナーエンジンとして Podman を使用するには、次のいずれかを行う必要があります。

  • Podman デスクトップで、Docker 互換モードを有効にし、Docker を無効にして、Podman が /var/run/docker.sock をリッスンするようにします。

  • Podman ソケットを使用して Docker コンテキストを作成します。Podman デスクトップを使用している場合は、設定> リソースにソケットパスがあります。

docker version コマンドを実行すると、どのエンジンがアクティブになっているかを確認できます。

JetBrains IDE で Qodana を実行する

Qodana は、JetBrains によって開発された IntelliJ IDEA、PhpStorm、WebStorm、GoLand、PyCharm、Rider、CLion など、いくつかの IDE で利用可能です。

以下は、IDE で Qodana を実行する方法を示す短いアニメーションです。

Running Qodana in an IDE

このアニメーションに示されているすべての手順の説明は次のとおりです。

  1. IDE で、問題ツールウィンドウに移動します。

  2. 問題ツールウィンドウで、Qodana タブをクリックします。

  3. Qodana タブで、ローカルで試すボタンをクリックして Qodana を開始します。

  4. Qodana タブでは、解析結果を確認できます。タブの上部には 2 つのリンクがあります。

    Links on the Qodana tab

    ブラウザーで分析レポートを開きます。

    Qodana report

    CI/CD パイプラインで Qodana を使用するには、構成ウィザードを開きます。

    Qodana in CI/CD pipelines

    Qodana および CI/CD パイプラインの詳細については、「CI 統合の概要」セクションを参照してください。

Visual Studio および Visual Studio Code のセクションに記載されている推奨事項を参考に、Qodana のインストール方法を学ぶこともできます。

CLI を使用して Qodana を実行する

このセクションでは、前提条件の章の手順を完了していることを前提としています。

  1. プロジェクトのルートディレクトリで、前提条件で説明されているプロジェクトトークンを含む QODANA_TOKEN 変数を宣言します。

    QODANA_TOKEN=<cloud-project-token>
    set QODANA_TOKEN=<cloud-project-token>
  2. Qodana をネイティブモードで実行するには、次のコマンドを使用します。

    qodana scan \    --linter <linter-name> \    --within-docker false
    qodana scan ^    --linter <linter-name> ^    --within-docker false

    このコマンドでは、--linter オプションは Qodana に呼び出すべきリンターを指示します。--within-docker false オプションは Qodana にネイティブモードを有効にするよう指示します。これらのオプションは、Qodana リンターを実行しながら、必要な JetBrains IDE バイナリファイルをダウンロードして使用するよう Qodana に指示します。

    Qodana をコンテナーモードで実行するには、以下のコマンドを使用します。

    qodana scan
    qodana scan

このセクションでは、前提条件の章で推奨されている事項をすでに適用済みであることを前提としています。

  1. 次のコマンドを実行してコードベースを分析します。

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

    ここで、<source-directory> はプロジェクトのルートを指し、QODANA_TOKEN 変数には前提条件で説明されているプロジェクトトークンが含まれています。

  2. 分析結果を確認するには、Qodana クラウド(英語)アカウントにアクセスしてください。

CI/CD を使用して Qodana を実行する

Azure Pipelines、CircleCI、GitHub Actions、GitLab CI/CD、TeamCity については、Qodana がネイティブソリューションを提供します。Bitbucket Cloud、Jenkins を使用して Qodana を実行するには、Docker イメージを使用できます。

GitHub アクションを使用して Qodana を設定および実行する方法を示す短いアニメーションを以下に示します。

Running Qodana in GitHub

前提条件の章に従ってすでにプロジェクトトークンを生成済みであることを前提として、以下の手順に従って Qodana をネイティブモードで実行するように構成してください。

  1. GitHub UI の設定タブで、QODANA_TOKEN 暗号化シークレット(英語)を作成し、プロジェクトトークンをその値として保存します。https://qodana.cloud/ 以外の Qodana Cloud インスタンスを使用している場合は、QODANA_ENDPOINT 環境変数を宣言して上書きしてください。

  2. GitHub UI のアクションタブで、新しいワークフローを設定し、.github/workflows/code_quality.yml ファイルを作成します。

  3. mainmaster ブランチ、およびリリースブランチとリポジトリに届くプルリクエストを分析するには、次のワークフロー構成を .github/workflows/code_quality.yml ファイルに保存します。

    name: Qodana on: workflow_dispatch: pull_request: push: branches: # Specify your branches here - main # The 'main' branch - master # The 'master' branch - 'releases/*' # The release branches jobs: qodana: runs-on: ubuntu-latest permissions: contents: write pull-requests: write checks: write steps: - uses: actions/checkout@v3 with: ref: ${{ github.event.pull_request.head.sha }} # to check out the actual pull request commit, not the merge commit fetch-depth: 0 # a full history is required for pull request analysis - name: 'Qodana Scan' uses: JetBrains/qodana-action@v2026.1 with: args:| --linter <linter-name> --within-docker false env: QODANA_TOKEN: ${{ secrets.QODANA_TOKEN }}

    args ブロックでは、--linter オプションによって Qodana に呼び出すべきリンターが指示されます。--within-docker false オプションは Qodana にネイティブモードを有効にするよう指示します。これらのオプションは、Qodana リンターを実行しながら、必要な JetBrains IDE バイナリファイルをダウンロードして使用するよう Qodana に指示します。

    name: Qodana on: workflow_dispatch: pull_request: push: branches: # Specify your branches here - main # The 'main' branch - master # The 'master' branch - 'releases/*' # The release branches jobs: qodana: runs-on: ubuntu-latest permissions: contents: write pull-requests: write checks: write steps: - uses: actions/checkout@v3 with: ref: ${{ github.event.pull_request.head.sha }} # to check out the actual pull request commit, not the merge commit fetch-depth: 0 # a full history is required for pull request analysis - name: 'Qodana Scan' uses: JetBrains/qodana-action@v2026.1 env: QODANA_TOKEN: ${{ secrets.QODANA_TOKEN }}

Qodana を Gradle のプラグインとして実行する

Gradle Qodana プラグイン(英語)は、Qodana によって提供されるコードインスペクションを実行するための Gradle インターフェースを提供します。まず、Gradle 構成ファイル内の Gradle プラグイン org.jetbrains.qodana を適用します。

build.gradle 構成ファイルに以下を追加します。

plugins { id "org.jetbrains.qodana" version "<plugin-version>" }

build.gradle.kts 構成ファイルに以下を追加します。

plugins { id("org.jetbrains.qodana") version "<plugin-version>" }

qodana { } 拡張構成

qodana { } トップレベル構成クロージャでの構成に使用できるプロパティ:

名前

説明

タイプ

デフォルト値

projectPath

分析するプロジェクトフォルダーへのパス。

String

project.projectDir

resultsPath

タスクの結果を保存するディレクトリへのパス。

String

"${projectPath}/build/qodana/results"

cachePath

生成されたレポートを保存するディレクトリへのパス。

String

"${projectPath}/build/qodana/cache/"

Gradle Qodana タスク

qodanaScan

プロジェクトディレクトリで Qodana を起動します。

このタスクは、qodana { } 拡張構成に依存します。ただし、提供されている arguments によっても制御されます。

サンプル

これを Gradle 構成ファイルに追加します。

  • Groovy – build.gradle

    plugins { // applies Gradle Qodana plugin to use it in project id "org.jetbrains.qodana" version "..." } qodana { // by default result path is $projectPath/build/results resultsPath = "some/output/path" } qodanaScan { arguments = ["--fail-threshold", "0"] }
  • Kotlin – build.gradle.kts

    plugins { // applies Gradle Qodana plugin to use it in a project id("org.jetbrains.qodana") version "..." } qodana { // by default, the result path is $projectPath/build/results resultsPath.set("some/output/path") } qodanaScan { resultsPath.set("some/output/path") arguments.set(listOf("--fail-threshold", "0")) }

これで、qodanaScan Gradle タスクを使用して分析を実行できます。

gradle qodanaScan // or ./gradlew qodanaScan

arguments パラメーターのオプションと構成に関する完全なガイドは、Qodana CLI ドキュメントページ(英語)にあります。

次のステップ

2026 年 4 月 21 日

関連ページ:

導入

Qodana を使用すると、コードインスペクションワークフローを大幅に強化できます。ゴールをより適切に達成するには、すぐに利用できるいくつかの機能を使い始めたい場合があります。コードの静的解析 Qodana にコードベースを分析させて、改善のための推奨事項を入手しましょう。CommunityUltimateUltimate Plus すべてのリンターベースライン既存のコードの問題をいくつかのカテゴリにグループ化し、コードの進化を効率的に監視します CommunityUltimateUltimate P...

組織

組織は、Qodana クラウドのすべてのエンティティのトップレベルの構造を提供します。すべての組織は、特定の JetBrains アカウントに基づいて作成されます。選択に応じて、プライベートまたはパブリックになります。Qodana Cloud のすべてのアカウントは、デフォルトの組織となる組織に基づいています。Qodana Cloud UI の左上にあるリストを使用して、組織間を移動できます。組織を作成する:プライベート組織またはパブリック組織を作成できます。プライベート組織に保存されたレポー...

プロジェクト

プロジェクトは Qodana レポートを蓄積します。各プロジェクトはプロジェクトトークンによって一意に識別されます。プロジェクトの作成:新しい組織を作成する際、Qodana Cloud は最初のプロジェクトの設定を支援するため、これらの手順は追加のプロジェクトを作成する場合にのみ関連します。チームページで、ボタンをクリックします。プロジェクトのセットアップ段階を完了します。この段階の詳細については、前提条件セクションを参照してください。プロジェクトを管理する:プロジェクトが作成された後、その...

JetBrains IDE

JetBrains Toolbox アプリ経由でインストールされた JetBrains IDE 製品(IntelliJ IDEA、PhpStorm、WebStorm、GoLand、PyCharm、Rider、CLion など)を使用して、Qodana を実行できます。IDE に応じて、利用可能な機能は以下のとおりです。Qodana をローカルで実行し、レポートを Qodana クラウドにアップロードする (CLion では利用できません)、Qodana クラウドに接続してレポートをダウンロードする...

GitHub アクション

Qodana Scan GitHub アクションを使用すると、GitHub リポジトリで Qodana を実行できます。プロジェクトを準備する:Qodana クラウドこのセクションのすべての構成例では、Qodana Cloud によって生成されたプロジェクトトークンを使用します。このトークンは、有料の Qodana リンターでは必須であり、コミュニティリンターで使用する場合はオプションです。Qodana Cloud UI でプロジェクトトークンを生成する方法については、次のセクションを参照してく...

Java、Kotlin、Groovy

すべての Qodana リンターは、特定のプログラミング言語とフレームワーク用に設計された JetBrains IDE に基づいています。Java プロジェクトを分析するには、次のリンターを使用できます。リンター名 Docker イメージベースとなるもの IntelliJ IDEA Ultimate ライセンスに基づいて利用可能 Ultimate および Ultimate Plus ライセンス発送方法ネイティブソリューションと Docker イメージサポートされる言語 Java、Kotlin、Groovy、...