npm命令行界面,用于将版本号注入文件

问题描述 投票:1回答:1

是否有任何CLI可以使用npm脚本将我的package.json版本注入某个任意文件?我不想使用gulp或grunt或webpack等。

npm build version
1个回答
2
投票

这可以分为三个部分。

事实证明,当运行npm_package_version时,NPM将包版本放在名为scripts的环境变量中。

有一个名为replace-in-file的NPM包,它提供了一个用于替换字符串的CLI。

不幸的是,Windows上环境变量替换的格式(例如%FOO_BAR%)与Linux上的格式不同(例如$FOO_BAR)。幸运的是,还有另一个名为cross-var的NPM软件包,它使环境变量在不同平台上保持一致。

将它们放在一起就可以替换它们。 x.x.x-SNAPSHOT使用.example中的以下脚本在dist目录中的所有package.json文件中使用当前包版本:

scripts: {
  "build:insert-version": "cross-var replace-in-file \"x.x.x-SNAPSHOT\" \"$npm_package_version\" \"dist/*.example\""
}
© www.soinside.com 2019 - 2024. All rights reserved.