gradle 进程命令 java 已完成,退出值为 1

2022-09-01 13:25:10

当我在 CentOS 7 终端中键入使用 gradle 启动此示例弹簧启动应用程序时,我收到以下错误。gradle bootRun --stacktrace --debug

Caused by: org.gradle.process.internal.ExecException:  
Process 'command '/opt/jdk1.8.0_45/bin/java'' finished with  
non-zero exit value 1

我已经谷歌了这个错误,并阅读了其他SO帖子,这些帖子是相似的,但不是重复的。例如,这是在 CentOS 7 和 Web 应用程序的 eclipse 中。这不是一个Android应用程序,等等。此外,其他帖子中给出的命令尚未解决此问题。

重现此问题所需的所有代码都位于上面的 github 链接中,诊断问题的所有日志都位于下面的 OP 中。如何解决此错误,以便我 gradle bootRun 可以成功启动示例应用?


一步一步再现的问题:


我按原样下载了应用程序,方法是导航到并键入/home/user/workspaces/git clone https://github.com/jrodenbostel/beyond-the-examples

然后,我导航到 并键入 ,这产生了堆栈跟踪和日志,您可以通过单击此链接到文件共享站点来读取这些跟踪和日志。cd /home/user/workspaces/beyond-the-examples/part-5gradle bootRun --stacktrace --debug


答案 1

这是我最初的错误消息:

enter image description here

将我在Windows中的环境变量从Java 9(文件目录)更改为Java 8()是我修复它的原因。您可以通过在命令提示符中键入内容来确定将 %JAVA_HOME% 设置为的路径。%JAVA_HOME%C:\Program Files\Java\jdk-9.0.1C:\Program Files\Java\jdk1.8.0_151echo %JAVA_HOME%

所以是的,截至2017年12月20日,Java 9不能很好地使用。希望这将很快得到解决,我可以删除这个答案。gradle bootRun


答案 2

查看日志,这似乎是您的问题:

nested exception is org.springframework.dao.DataIntegrityViolationException: PreparedStatementCallback; SQL [inser t into users (username, password, enabled) values (?,?,?)]; Data truncation: 
Data too long for column 'password' at row 1; nested exception is com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'password' at row 1. 

无论如何,您可以截断密码大小吗?否则,增加“密码”列大小应该可以解决问题。


推荐