2

我需要运行grunt-bump它会影响 . 中的版本号package.json,然后运行grunt-xmlpoke并使用新版本号更新配置文件。

所以我尝试了几件事。在grunt.initConfig我运行凹凸中,然后我运行 xmlpoke。

1) xmlpoke 需要grunt.file.readJSON('package.json').version

或者

2)在颠簸之后,我运行了一个自定义任务,将新版本添加到 grunt 选项中,并且 xmlpoke 的值为grunt.options("versionNumber")

在这两个版本中,xml 结果都是预凹凸版本。所以 xmlpoke 在任务运行之前获取它的值,并在调用它的任务时使用它们。但我需要它来获取上一个任务的结果。

有没有办法做到这一点?

4

1 回答 1

2

好的,我已经找到了一个有点明显的解决方案。

使用 grunt-bump 可以更新 package.config,也可以更新在 initConfig 开头经常读入变量 pkg 的 package.config。所以在你指定的碰撞任务的设置中

{
updateConfigs:['pkg']
}

然后在 xmlpoke 我可以做

{ xpath:'myxpath', value:'blablabla/<%=pkg.version%>'}  

这有效。我之前做的是

{ xpath:'myxpath', value:'blablabla/' + grunt.options.versionNumber}

我在颠簸之后的上一个任务中设置了版本号。或者

{ xpath:'myxpath', value:'blablabla/'+ grunt.file.readJSON('package.json').version}

这些都不起作用。我想我只是为了自己的利益而变得聪明,因为 <%= %> 是从 initConfig 中访问参数的更常见和典型的方式。

无论如何,你有它。或者我有。

于 2014-01-27T00:10:43.120 回答