Bun 是一个快速的全能工具包,用于运行、构建、测试和调试 JavaScript 和 TypeScript(从单个文件到全栈应用程序)。Bun 的核心是一个快速的 JavaScript 运行时,旨在取代 Node.js。它是用 Zig 语言编写的,并在底层由 JavaScriptCore 提供支持,大大减少了启动时间和内存使用。
Bun 旨在提供比 npm 和 yarn 更快的安装速度。如果你想要将现有的 npm 项目迁移到使用 Bun,可以按照以下步骤快速进行:
1. 安装 Bun
首先,你需要安装 Bun。你可以通过以下命令来安装它:
curl -fsSL https://bun.sh/install | bash
或者使用 Homebrew(如果你在 macOS 上):
brew install bun
2. 初始化项目
如果你的项目还没有 package.json
文件,你可以使用 Bun 来初始化一个新的项目:
bun init
这将引导你创建一个新的 package.json
和 bun.lockb
文件。
3. 迁移依赖
将现有的 package.json
文件中的依赖项迁移到 Bun。Bun 使用与 npm 相同的 package.json
格式,所以你不需要更改依赖项的名称或版本号。
4. 安装依赖
使用 Bun 来安装项目的依赖项:
# It only takes one command to migrate
$ bun i
# To add dependencies:
$ bun i @types/bun
# To add devDependencies:
$ bun i -d @types/bun
# To remove a dependency:
$ bun rm @types/bun
这将读取 package.json
文件并安装所有列出的依赖项。
5. 更新脚本
如果你的 package.json
文件中有脚本(scripts),你可能需要更新它们以使用 Bun 的命令。例如,如果你之前使用的是 npm run
,现在应该改为 bun run
,相关指令如下:
NPM | Bun |
---|---|
npm run <script> | bun <script> |
npm exec <bin> | bun <bin> |
node <file> | bun <file> |
npx <package> | bunx <package> |
例如,将:
"scripts": {
"start": "node index.js"
}
改为(可以直接运行 .ts
文件):
"scripts": {
"start": "bun index.ts"
}
运行 package.json 中的脚本、node_modules/.bin
(有点像npx
)中的可执行文件以及 JavaScript/TypeScript 文件(就像node
),所有这些都只需通过一条简单的命令即可完成。使用 bun run <executable>
时,它会选择本地安装的可执行文件。
# Run a package.json script:
$ bun my-script
$ bun run my-script
# Run an executable in node_modules/.bin:
$ bun my-executable # such as tsc, esbuild, etc.
$ bun run my-executable
# Run a JavaScript/TypeScript file:
$ bun ./index.ts
6. 测试项目
确保运行一些基本的测试来验证项目是否在 Bun 下正常工作:
bun run start
或者如果你有测试脚本:
bun test
完成以上步骤后,你的项目应该已经成功迁移到了 Bun。记得在发布生产环境前进行充分的测试,以确保一切运行正常。
大家都在看