qodana-cli

(β˜… 239)

πŸ”§ JetBrains Qodana’s official command line tool

  • .env.example
  • .gitattributes
  • .gitignore
  • .golangci.yml
  • .goreleaser.yaml
  • .mailmap
  • .pre-commit-config.yaml
  • bots.json
  • CONTRIBUTING.md
  • go.mod
  • go.sum
  • install
  • LICENSE
  • qodana.yml
  • README.md
  • run
  • sudo
  • tools.go

# μ„€μΉ˜ κ°€μ΄λ“œ

1. μ½”λ“œ λ‚΄λ €λ°›κΈ°
git clone https://github.com/JetBrains/qodana-cli

κΉƒν—ˆλΈŒμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œ 전체λ₯Ό λ‚΄ μ»΄ν“¨ν„°λ‘œ λ‚΄λ €λ°›μŠ΅λ‹ˆλ‹€.

cd qodana-cli

방금 내렀받은 ν”„λ‘œμ νŠΈ 폴더 μ•ˆμœΌλ‘œ μ΄λ™ν•©λ‹ˆλ‹€.

2. 곡식 μ„€μΉ˜ 슀크립트

쉬움 μΆ”μ²œ
사전 μ€€λΉ„λ¬Ό
  • Homebrew macOS/Linux용 νŒ¨ν‚€μ§€ λ§€λ‹ˆμ €μž…λ‹ˆλ‹€.
  • Chocolatey Windows용 νŒ¨ν‚€μ§€ λ§€λ‹ˆμ €μž…λ‹ˆλ‹€.
  • Scoop Windows용 νŒ¨ν‚€μ§€ λ§€λ‹ˆμ €μž…λ‹ˆλ‹€.
brew install jetbrains/utils/qodana

Homebrew둜 이미 λΉŒλ“œλœ νŒ¨ν‚€μ§€λ₯Ό λ°”λ‘œ μ„€μΉ˜ν•©λ‹ˆλ‹€. μ†ŒμŠ€ λΉŒλ“œκ°€ ν•„μš” μ—†μŠ΅λ‹ˆλ‹€.

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

곡식 μ„€μΉ˜ 슀크립트λ₯Ό λ‹€μš΄λ‘œλ“œν•΄μ„œ λ°”λ‘œ μ‹€ν–‰ν•©λ‹ˆλ‹€. 이 ν•œ μ€„λ‘œ ν•„μš”ν•œ 게 μžλ™μœΌλ‘œ μ„€μΉ˜λ©λ‹ˆλ‹€.

choco install qodana

Chocolatey둜 λ°”λ‘œ μ„€μΉ˜ν•©λ‹ˆλ‹€ (Windows).

scoop install qodana

Scoop으둜 λ°”λ‘œ μ„€μΉ˜ν•©λ‹ˆλ‹€ (Windows).

βœ… μ„€μΉ˜ ν›„ μƒˆ 터미널을 μ—΄κ³ , ν”„λ‘œκ·Έλž¨μ˜ 버전 확인 λͺ…λ Ή(예: --version)으둜 정상 μ„€μΉ˜λλŠ”μ§€ ν™•μΈν•˜μ„Έμš”.

이 레포의 README에 적힌 μ‹€μ œ λͺ…λ Ήμ–΄λ₯Ό κ·ΈλŒ€λ‘œ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€.

3. Docker

쉬움
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Docker Desktop μ»¨ν…Œμ΄λ„ˆλ₯Ό λΉŒλ“œν•˜κ³  μ‹€ν–‰ν•˜λ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€. μ„€μΉ˜ ν›„ μ‹€ν–‰ν•΄μ„œ λ°±κ·ΈλΌμš΄λ“œμ— μΌœλ‘μ„Έμš”.
!Legacy note!: Until version 2025.2 this parameter was used to define a docker image. This behavior is deprecated but supported for backward compatibility. Please use parameters --linter and --within-docker=true or --image instead.

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

--within-docker string Defines if analysis is performed within a docker container or not.

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

Set to 'false' for performing analysis in native mode. Set to 'true' for performing analysis within a docker container.

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

Sets --within-docker=true. Sets --linter to the one preinstalled within the image.

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

Available images are: jetbrains/qodana-jvm:2025.3-eap, jetbrains/qodana-dotnet:2025.3-eap, etc. Full list of images is available at https://hub.docker.com/u/jetbrains?search=qodana .

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

βœ… 터미널에 docker compose ps λ₯Ό μž…λ ₯ν•΄ μ»¨ν…Œμ΄λ„ˆλ“€μ΄ Up μƒνƒœμΈμ§€ ν™•μΈν•˜μ„Έμš”. README에 포트 λ²ˆν˜Έκ°€ μ ν˜€μžˆλ‹€λ©΄ λΈŒλΌμš°μ €μ—μ„œ http://localhost:포트번호 둜 μ ‘μ†ν•΄λ³΄μ„Έμš”.

이 레포의 README에 적힌 μ‹€μ œ λͺ…λ Ήμ–΄λ₯Ό κ·ΈλŒ€λ‘œ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€.

4. CMake

보톡
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • CMake λΉŒλ“œ 섀정을 μƒμ„±ν•˜λŠ” λ„κ΅¬μž…λ‹ˆλ‹€.
  • C/C++ 컴파일러 WindowsλŠ” Visual Studio(Community 무료), macOSλŠ” Xcode Command Line Tools, LinuxλŠ” gcc/g++ νŒ¨ν‚€μ§€κ°€ ν•„μš”ν•©λ‹ˆλ‹€.
⚠️ 이 ν”„λ‘œμ νŠΈλŠ” 규λͺ¨κ°€ 큰 μ €μž₯μ†ŒλΌ, 이 방법이 μ‹€μ œ 핡심 μ œν’ˆμ΄ μ•„λ‹ˆλΌ λ‚΄λΆ€ ν•˜μœ„ νŒ¨ν‚€μ§€λ₯Ό κ°€λ¦¬ν‚€λŠ” 것일 수 μžˆμŠ΅λ‹ˆλ‹€. README 전체λ₯Ό ν•¨κ»˜ ν™•μΈν•΄λ³΄μ„Έμš”.
cd clang/testdata/TestLinterRun

이 ν”„λ‘œμ νŠΈμ˜ κ΄€λ ¨ 파일이 ν•˜μœ„ 폴더 μ•ˆμ— μžˆμ–΄μ„œ, λ¨Όμ € κ·Έ ν΄λ”λ‘œ μ΄λ™ν•©λ‹ˆλ‹€.

mkdir build && cd build

λΉŒλ“œ 결과물을 담을 폴더λ₯Ό λ§Œλ“€κ³  κ·Έ μ•ˆμœΌλ‘œ μ΄λ™ν•©λ‹ˆλ‹€.

cmake ..

μ†ŒμŠ€μ½”λ“œλ₯Ό 뢄석해 λΉŒλ“œ μ„€μ • νŒŒμΌμ„ μƒμ„±ν•©λ‹ˆλ‹€ (build 폴더 μ•ˆμ—μ„œ μ‹€ν–‰ν•΄μ•Ό 함).

make

μƒμ„±λœ λΉŒλ“œ 섀정을 λ°”νƒ•μœΌλ‘œ μ‹€μ œ μ»΄νŒŒμΌμ„ μ§„ν–‰ν•΄ μ‹€ν–‰ νŒŒμΌμ„ λ§Œλ“­λ‹ˆλ‹€.

βœ… build 폴더 μ•ˆμ— μ‹€ν–‰ 파일이 μƒμ„±λλŠ”μ§€ ν™•μΈν•˜κ³ , 직접 μ‹€ν–‰ν•΄λ³΄μ„Έμš” (예: ./build/앱이름).

5. .NET

보톡
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • .NET SDK dotnet λͺ…λ Ήμ–΄λ₯Ό μ“°κΈ° μœ„ν•œ SDKμž…λ‹ˆλ‹€.
Available values: qodana-jvm-community, qodana-jvm, qodana-jvm-android, qodana-android, qodana-php, qodana-python-community, qodana-python, qodana-js, qodana-cdnet, qodana-dotnet, qodana-ruby, qodana-cpp, qodana-go, qodana-rust, qodana-clang, qodana-poly.

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

Available images are: jetbrains/qodana-jvm:2025.3-eap, jetbrains/qodana-dotnet:2025.3-eap, etc. Full list of images is available at https://hub.docker.com/u/jetbrains?search=qodana .

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

--no-statistics [qodana-clang/qodana-dotnet] Disable sending anonymous statistics

이 λͺ…λ Ήμ–΄λ₯Ό 터미널에 κ·ΈλŒ€λ‘œ μž…λ ₯ν•΄ μ‹€ν–‰ν•˜μ„Έμš”.

βœ… dotnet run μ‹€ν–‰ ν›„ 터미널에 λ‚˜νƒ€λ‚˜λŠ” μ•ˆλ‚΄ λ©”μ‹œμ§€λ‚˜ μ£Όμ†Œλ₯Ό ν™•μΈν•˜μ„Έμš”.

이 레포의 README에 적힌 μ‹€μ œ λͺ…λ Ήμ–΄λ₯Ό κ·ΈλŒ€λ‘œ κ°€μ Έμ™”μŠ΅λ‹ˆλ‹€.

6. Maven (Java)

보톡
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • JDK (Java) Java ν”„λ‘œμ νŠΈλ₯Ό λΉŒλ“œ/μ‹€ν–‰ν•˜λ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Maven mvn λͺ…λ Ήμ–΄λ₯Ό μ“°κΈ° μœ„ν•œ λΉŒλ“œ λ„κ΅¬μž…λ‹ˆλ‹€.
cd .teamcity

이 ν”„λ‘œμ νŠΈμ˜ κ΄€λ ¨ 파일이 ν•˜μœ„ 폴더 μ•ˆμ— μžˆμ–΄μ„œ, λ¨Όμ € κ·Έ ν΄λ”λ‘œ μ΄λ™ν•©λ‹ˆλ‹€.

mvn clean install

Maven으둜 μ˜μ‘΄μ„± μ„€μΉ˜μ™€ λΉŒλ“œλ₯Ό μ§„ν–‰ν•©λ‹ˆλ‹€.

βœ… BUILD SUCCESS λ©”μ‹œμ§€κ°€ 뜨면 μ„±κ³΅μž…λ‹ˆλ‹€. target/ 폴더에 결과물이 μƒμ„±λ©λ‹ˆλ‹€.

7. Go

보톡
사전 μ€€λΉ„λ¬Ό
  • Git GitHubμ—μ„œ ν”„λ‘œμ νŠΈ μ½”λ“œλ₯Ό λ‚΄λ €λ°›μœΌλ €λ©΄ ν•„μš”ν•©λ‹ˆλ‹€.
  • Go Go μ–Έμ–΄ 컴파일러 및 도ꡬ λͺ¨μŒμž…λ‹ˆλ‹€.
go build ./...

Go ν”„λ‘œκ·Έλž¨μ„ μ»΄νŒŒμΌν•΄ μ‹€ν–‰ νŒŒμΌμ„ λ§Œλ“­λ‹ˆλ‹€.

go run .

λ”°λ‘œ λΉŒλ“œν•˜μ§€ μ•Šκ³  λ°”λ‘œ Go ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•©λ‹ˆλ‹€.

βœ… λΉŒλ“œκ°€ μ—λŸ¬ 없이 λλ‚˜λ©΄ μ„±κ³΅μž…λ‹ˆλ‹€. go run . 을 썼닀면 터미널 좜λ ₯을 ν™•μΈν•˜μ„Έμš”.
// repository documentation