无法在Spring Boot上构建可执行的JAR

时间:2020-04-13 11:33:10

标签: java spring-boot gradle

我目前正在阅读Spring Boot(https://spring.io/guides/gs/uploading-files/#initial)的教程页面,以检查如何上传图像文件,但是我不太了解“运行”的“构建可执行JAR”部分。应用”一章。

我通过教程页面上的链接下载了该项目,然后复制并粘贴了所有文件,并在命令提示符下写了“./gradlew bootRun”,就像在页面的“构建可执行JAR”部分中所写的那样,但我无法运行该程序。

为了更具体地描述我的情况,我使用cd命令移动到了存在gradle文件的目录(在我的PC环境中为C:\Users\marra\Documents\workspace-spring-tool-suite-4-4.5.1.RELEASE\ImgUpload\gs-uploading-files\initial),然后输入“ ./gradlew bootRun”并按键盘上的Enter键,但仍然收到错误消息“BUILD FAILED”

在这里,我提出两个问题。

・首先,我是否首先正确地遵循了教程的说明?换句话说,我所做的是“移至C:\ Users \ marra \ Documents \ workspace-spring-tool-suite-4-4.5.1.RELEASE \ ImgUpload \ gs-uploading-files \ initial目录并写上“ ./gradlew bootRun”,然后按Enter键,但这是运行教程程序的正确方法吗?如果我的操作方式错误,应该如何运行该程序? “您可以使用./gradlew bootRun运行应用程序”是什么意思?

・此失败的另一种可能性是,即使我确实按照本教程的说明进行操作,也会收到一条错误消息。但是在那种情况下,我哪一部分做错了?当我尝试运行该程序并失败时,命令提示符显示错误消息“任务':compileJava'执行失败。 >编译失败;有关详细信息,请参见编译器错误输出。”我自己进行了一些研究,例如在https://github.com/realm/realm-java/issues/5910之类的页面上建议“任何编译失败都会收到此消息。”。也许我可能没有正确复制并粘贴文件的所有示例代码,但是问题是我不知道要检查哪个文件夹,哪个文件,哪个行。我在“--debug”命令中添加了“./gradlew bootRun”,以查看出现了哪种错误,并且得到了以下信息。

13:28:20.806 [LIFECYCLE] [class org.gradle.internal.buildevents.TaskExecutionLogger] > Task :compileJava FAILED        

13:28:21.249 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] FAILURE: Build failed with an exception.

13:28:21.250 [ERROR] [org.gradle.internal.buildevents.BuildResultLogger] BUILD FAILED in 6s   

至少我希望我能弄清楚“到哪里去寻找”错误的原因,或者有一个适当的假设,例如“如果一切顺利,则XXX部分应显示为YYY”。但实际上,它显示为ZZZ,因此通过缩小问题的范围,“ AAA”部分可能有问题。

1 个答案:

答案 0 :(得分:2)

我刚刚跟踪了该教程,并成功构建了。 / gradlew bootRun 。在这种情况下,您应该检查计算机上已安装的Java版本(以及gradle正在使用的Java版本)。如您在gradle构建文件中看到的那样: sourceCompatibility ='1.8'。如果您的Java版本低于 1.8 ,则编译可能会失败。过去,在Gradle构建胖靴子罐子时,我还遇到了一些问题,也许这也会有所帮助:Spring boot and Gradle multi-modules project, failed to load dependencies correctly