env.BUILD_ID
是一个groovy变量,而不是一个shell变量。由于您使用了单引号('
),因此groovy 不会 替换字符串中的变量,并且Shell也不知道${env.BUILD_ID}
。您需要使用双引号"
并让groovy进行替换
sh "echo version := 1.0.${env.BUILD_ID} >> build.sbt"
或使用外壳程序知道的变量
sh 'echo version := 1.0.$BUILD_ID >> build.sbt'
并且由于您需要用双引号引起来的版本,因此需要这样的内容:
sh "echo version := \\\"1.0.${env.BUILD_ID}\\\" >> build.sbt"