npm
(全称 Node Package Manager)是 Node.js 的包管理工具,它是一个基于命令行的工具,用于帮助开发者在自己的项目中安装、升级、移除和管理依赖项。
类似于 PHP
的工具:Composer
。它是 PHP 的包管理器,可以用于下载、安装和管理 PHP 的依赖项,类似于 npm。
类似于 Java
的工具:Maven
。它是 Java 的构建工具和项目管理工具,可以自动化构建、测试和部署 Java 应用程序,类似于 npm 和 webpack 的功能。
类似于 Python
的工具:pip
。它是 Python 的包管理器,可以用于安装和管理 Python 的依赖项,类似于 npm。
类似于 Rust
的工具:Cargo
。它是 Rust 的包管理器和构建工具,可以用于下载、编译和管理 Rust 的依赖项,类似于 npm 和 Maven 的功能。
npm(node package manager,Node包管理器)
作用域包(scoped package):必须以 @ 符号开头,后面跟上作用域名称,再加上一个斜杠,最后是包名,即 @scope-name/package-name。例如 @vue/cli。可以避免重名的情况,作用域名可以充当一个命名空间,同时也能表达某一系列包属于某一个组织。
非作用域包(unscoped package):非作用域包由于没有特定的作用域,因此在发布时一定要保证包名是全局唯一的。常见的非作用域包有 lodash、axios 等。
公共包(public package):公共包是在 npm 注册表中公开发布的包,任何人都可以搜索、查看和安装。公共包在发布时默认为开源许可证(如 MIT、BSD、Apache 等),这意味着其他人可以自由地查看源代码、修改代码并在自己的项目中使用。
私有包(private package):私有包是在 npm 注册表中非公开发布的包,只能被特定的用户或团队成员搜索、查看和安装。私有包通常用于存储企业内部的代码和资源,或者在开发过程中尚未准备好向公众发布的项目。要发布和使用私有包,需要拥有一个 npm 付费账户,并将包的 private 属性设置为 true。私有包通常都是作用域包。