包管理与工具链
npm/cargo/go mod/nuget/gem。
25 分钟
包管理与工具链
每种后端语言都有 依赖声明、锁文件、构建、测试、发布 的惯用法。异构团队最怕 「我会 Maven,但看不懂 go.mod / Cargo.toml」——本节把 npm、cargo、go mod、NuGet、gem 与 Java Maven 放在同一视角,并衔接本站已有 track。
学习目标
- 对照各语言包管理器与锁文件习惯
- 读懂他人仓库的依赖与构建入口
- 建立供应链安全的基本意识(版本 pinning、SBOM)
对照表
| 生态 | 声明文件 | 锁文件 | 安装/构建 | 本站 track |
|---|---|---|---|---|
| Java | pom.xml / Gradle | 间接锁定 | mvn test package | java-maven |
| Node | package.json | package-lock.json | npm ci, npm test | node-modules |
| Python | pyproject.toml / requirements | poetry.lock 等 | pip install, pytest | python-fundamentals |
| Go | go.mod | go.sum | go build, go test | 本 track pl-go |
| Rust | Cargo.toml | Cargo.lock | cargo build, cargo test | 本 track pl-rust |
| C# | .csproj | packages.lock.json(可选) | dotnet build | 本 track pl-csharp |
| Ruby | Gemfile | Gemfile.lock | bundle install | 本 track pl-ruby |
| PHP | composer.json | composer.lock | composer install | php-composer |