支援的套件生態系統
相依性掃描支援所有支援的套件生態系統的直接和可轉移相依性。 相依性掃描無法偵測存放庫中廠商的相依性。
由於偵測執行相依性掃描的方式,請確定您的組建管線中有套件還原步驟,以便判斷正確的套件版本,否則結果可能會遺失或不完整。
生態系統和版本
套件管理員 | 語言 | 支援的格式 | 支援的版本 |
---|---|---|---|
貨物 | Rust | Cargo.toml , Cargo.lock |
v1 |
CocoaPods \(英文\) | Swift | Podfile.lock |
n/a |
Go 模組 | Go | go.mod , go.sum |
n/a |
Gradle (英文) | Java | *.lockfile |
n/a |
Maven | Java | pom.xml |
n/a |
npm \(英文\) | JavaScript | package-lock.json 、 、 package.json 、 npm-shrinkwrap.json lerna.json |
v6, v7 和 lockfile <= v3 |
NuGet (英文) | C# | *.packages.config 、 、 *.project.assets *.csproj |
n/a |
pip | Python | setup.py , requirements.txt |
n/a |
pnpm | JavaScript | package.json |
v7、v8 |
RubyGems | Ruby | Gemfile.lock |
n/a |
Yarn | JavaScript | package.json |
v1、v2 |
貨運
如果使用 Cargo
v1.77 或更新版本安裝 cli, cargo metadata
這會更精確。
Go 模組
如果使用 Go v1.17 或更新版本, go.mod
則直接使用 ,如果代理程式上存在,則會使用 go cli
。 否則會 go.sum
掃描檔案。
Maven
偵測需要 maven
將 CLI 安裝在代理程式上。
npm \(英文\)
相依性掃描會偵測任何根 package.json
檔案,但即使 中的相依性 package.json
未經過語意化版本設定,也不會在建置階段解析特定套件版本。
NuGet (英文)
如果沒有套件還原,即使 中的相依性未經過語意化版本,相依 *.csproj
性掃描也不會解析任何特定的套件版本。
pip
使用 pip v22.2.0
或更新版本來啟用 pip report
掃描,以提供更精確的偵測。
環境變數 PIP_INDEX_URL
是用來判斷應該用於 哪一 pip install --report detection
個套件摘要。 除非全域設定 pip 預設值,否則預設值會使用 PyPi 索引。