Spring boot 运行spring启动应用程序的jar文件时出错

Spring boot 运行spring启动应用程序的jar文件时出错,spring-boot,docker,devops,Spring Boot,Docker,Devops,当我创建一个jar文件时,它将被创建,但当我运行一个jar文件时,它将显示与docker文件类似的错误。当我创建一个docker文件时,它将被创建,但当我运行一个docker文件时,它将显示错误 jar { baseName = "${project.jarName}" version = "${project.versionName}" enabled = true manifest { attributes 'Main-Class': 'co

当我创建一个jar文件时,它将被创建,但当我运行一个jar文件时,它将显示与docker文件类似的错误。当我创建一个docker文件时,它将被创建,但当我运行一个docker文件时,它将显示错误


jar {
    baseName = "${project.jarName}"
    version = "${project.versionName}"
    enabled = true
    manifest {
        attributes 'Main-Class': 'com.exmaple.Application'
    }

}


task buildDocker(type: Docker, dependsOn: build) {
    push = false
    applicationName = jar.baseName
    tagVersion = jar.version
    dockerfile = file('src/main/docker/Dockerfile')
    doFirst {
        copy {
            from jar
            into stageDir
        }
        copy {
            from "${project.buildDir}/resources/main/run.sh"
            into stageDir
        }
    }
}
错误

线程“main”java.lang.NoClassDefFoundError中出现异常:org/springframework/boot/SpringApplication 位于com.example.Application.main(Application.java:19)
原因:java.lang.ClassNotFoundException:org.springframework.boot.SpringApplication

使用build.gradle文件中的Shadow Jar库来解决此问题

apply plugin: 'com.github.johnrengelman.shadow'

classpath 'com.github.jengelman.gradle.plugins:shadow:2.0.1'


你的Dockerfile是什么样子的?