命令行工具

@rspack/cli 是 Rspack 的命令行工具,它提供了多种命令来简化 Rspack 的使用。

  • 如果你没有安装过 @rspack/cli,请先阅读 快速开始 章节。
  • 如果你使用的是 Rsbuild,请参考 Rsbuild CLI 章节。
和 webpack-cli 的兼容性

@rspack/cliwebpack-cli 并不是完全兼容的,它们会有一些使用方式的差异。

查看所有命令

如果你需要查看所有可用的 CLI 命令,请在项目目录中运行以下命令:

npx rspack -h

公共选项

Rspack CLI 提供了一些公共选项,可以用于所有命令:

选项描述
-c, --config [value]指定配置文件路径,详见 指定配置文件
--configLoader指定配置文件加载器,可以是 nativeregister,默认是 register
--configName指定配置文件名称
--nodeEnv设置 process.env.NODE_ENV 的值,rspack dev 默认是 developmentrspack buildrspack preview 默认是 production
-h, --help显示帮助信息
-v, --version显示版本号
TIP

Rspack CLI 的所有选项都支持使用 camelCase(驼峰命名)和 kebab-case(短横线命名),例如 --configLoader--config-loader 都是有效的。

rspack build

rspack build 用于运行 Rspack 构建,将会在 output.path 目录下生成构建后的文件。

npx rspack build  # 默认读取 `rspack.config.*` 配置文件

rspack build 可以缩写为 rspack b

npx rspack b

使用 -c--config 选项来指定配置文件路径:

npx rspack build -c ./your.config.js

完整的选项如下:

rspack build

Options:
      --entry        entry file                                          [array]
  -o, --outputPath   output path dir                                    [string]
  -m, --mode         mode                                               [string]
  -w, --watch        watch                            [boolean] [default: false]
      --env          env passed to config function                       [array]
  -d, --devtool      devtool                          [boolean] [default: false]
      --analyze      analyze                          [boolean] [default: false]
      --json         emit stats json
      --profile      capture timing information for each module
                                                      [boolean] [default: false]

rspack dev

rspack dev 用于运行 Rspack 开发服务器,将会在本地启动一个开发服务器,监听文件变化并自动刷新浏览器。

npx rspack dev

使用 -c--config 选项来指定配置文件路径:

npx rspack dev -c ./your.config.js

rspack dev 的别名为 rspack serverspack s

npx rspack s
npx rspack serve

完整的选项如下:

rspack dev

Options:
      --entry        entry file                                          [array]
  -o, --outputPath   output path dir                                    [string]
  -m, --mode         mode                                               [string]
  -w, --watch        watch                            [boolean] [default: false]
      --env          env passed to config function                       [array]
  -d, --devtool      devtool                          [boolean] [default: false]
      --hot          enables hot module replacement
      --port         allows to specify a port to use                    [number]
      --host         allows to specify a hostname to use                [string]

rspack preview

rspack preview 用于在本地预览生产模式构建的产物, 注意你需要提前执行 rspack build 命令构建出产物。

npx rspack preview

完整的选项如下:

rspack preview [dir]

Positionals:
  dir  directory want to preview                                        [string]

Options:
      --publicPath  static resource server path                         [string]
      --port        preview server port                                 [number]
      --host        preview server host                                 [string]
      --open        open browser                                       [boolean]
      --server      Configuration items for the server.                 [string]