Jenkins for Scala(SBT)Git master => Build => Test => Build Docker =>推入hub.docker

我想使用Jenkins的堆栈继续交付:Git Scala(SBT)Do​​cker

Jenkinsfile:

pipeline { agent any stages { stage('Build') { steps { echo "Compiling..." sh "${tool name: 'sbt', type: 'org.jvnet.hudson.plugins.SbtPluginBuilder$SbtInstallation'}/bin/sbt compile" } } stage('Docker Publish') { steps { // Generate Jenkinsfile and prepare the artifact files. sh "${tool name: 'sbt', type: 'org.jvnet.hudson.plugins.SbtPluginBuilder$SbtInstallation'}/bin/sbt docker:stage" // Run the Docker tool to build the image script { docker.withTool('docker') { docker.build('my-app:latest', 'target/docker/stage') } } } } } } 

我在“Docker发布”步骤中有下一条消息:

 [job1] Running shell script + /var/jenkins_home/tools/org.jvnet.hudson.plugins.SbtPluginBuilder_SbtInstallation/sbt/bin/sbt docker:stage [info] Set current project to job1 (in build file:/var/jenkins_home/workspace/job1/) [error] Not a valid key: stage (similar: state, target, tags) [error] docker:stage [error] ^ script returned exit code 1 

我不知道这个麻烦的原因。

joinbuild.sbt文件:

 import com.typesafe.sbt.packager.archetypes.JavaAppPackaging //enablePlugins(JavaAppPackaging) enablePlugins(JavaServerAppPackaging) 

添加到项目/ plugin.sbt文件中:

 addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.2.0") 

刷新SBT项目。

它是在SBT版本0.13.16