gradle process命令java以非零退出值1结束

时间:2015-12-22 23:12:12

标签: java spring gradle spring-boot build.gradle

当我在CentOS 7终端中键入gradle bootRun --stacktrace --debug以使用gradle启动this sample spring boot app时,我收到以下错误。

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中的eclipse和一个Web应用程序。这不是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-5并输入gradle bootRun --stacktrace --debug,结果为the stack trace and logs that you can read by clicking on this link to a file sharing site.(日志太长,无法包含在此OP中。)

3 个答案:

答案 0 :(得分: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. 

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

答案 1 :(得分:1)

这是我原来的错误消息:

enter image description here

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

所以,截至2017年12月20日,gradle bootRun与Java 9不能很好地配合。希望很快就会修复,我可以删除这个答案。

答案 2 :(得分:-1)

尝试将您的jdk版本恢复为1.7

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

安装后转到: 档案 - >项目结构 - > SDK位置 - > JDK位置

让位置指向根目录(IE是带有javaw的bin上面的那个)