启动时,Docker容器无法在jar中找到api-rest的主要类

时间:2019-10-08 09:43:43

标签: java spring-boot docker gradle jar

我用gradle构建了一罐spring-boot api,但是启动docker容器后,它会自行停止并记录“错误:找不到或加载主类com.test.exampleController”

这是针对Docker项目的

我将此代码插入到build.gradle中。

task fatJar(type: Jar) {
    manifest {
        attributes 'Main-Class': 'com.test.exampleController'
    }
    baseName = project.name + '-all'
    from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
    with jar
}

我不确定我是否需要在班级中添加一些注释,或者问题是否是因为我有3个控制器

我希望使用spring-boot api运行一个docker容器并对其进行测试,例如邮递员

1 个答案:

答案 0 :(得分:0)

最后我发现了错误,我试图用不正确的启动器来构建罐子。在gradle选项卡中,我可以找到任务,在内部版本中其他任务之间会出现“ jar”,这是我的错误,我当时在想“如果我想要一个jar,这是我的任务”,但我没有想到,我想要一个springboot的jar,它暗示着我需要那个罐子有主类和启动器。为此,在我的任务“ bootjar”中存在另一个选项。生成清单文件,其中定义了main-class和start-class。附属图片

enter image description here