用gulp修改json文件

我有一个package.json文件:

{ "name": "Name", "version": "0.0.0", "author": "Company", "description": "A sample project.", "private": true } 

我希望能够使用gulp来更新版本字段。 我将使用环境variables将其设置为来自Jenkins的内部版本号:

 var version = process.env.MAJOR +'.' + process.env.MINOR + '.' + process.env.BUILD_NUMBER; 

我想要一个任务,将json文件的版本字段更新为版本的值:

 gulp.task('update-package-build-no', function () { pkg.version = version; }); 

有任何想法吗? 这是否可以实现? 我将使用angular来阅读我的package.json文件,以在关于页面显示应用程序的版本号。

看一下吞噬 。

您可以使用以下语法:

 gulp.src("package.json") .pipe(bump(process.env.MAJOR + '.' + process.env.MINOR + '.' + process.env.BUILD_NUMBER)) .pipe(gulp.dest('./')) 

顺便说一句 – 这是major.minor.patch-tags + buildNumber。 🙂

构build元数据可以通过在修补程序或预发行版本之后立即附加加号和一系列点分隔标识符来表示。 标识符必须只包含ASCII字母数字和连字符[0-9A-Za-z-]。 标识符不能为空。 在确定版本优先级时,构build元数据应该被忽略。 因此,仅在构build元数据中有所不同的两个版本具有相同的优先级。 示例:1.0.0-alpha + 001,1.0.0 + 20130313144700,1.0.0-beta + exp.sha.5114f85。