Mis*_*yed 5 java gradle spring-boot spring-boot-maven-plugin spring-boot-gradle-plugin
试图通过喜欢gradlew clean build bootRun或者简单地gradlew bootRun显示gradle/java进程在没有提示的情况下退出/崩溃.除了以下内容外,不会显示其他错误或日志:
"/ Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home/bin/java以非零退出值1完成".
gradlew bootRun --debug然而,运行显示BootRun(Gradle的JavaExec的扩展)任务似乎想要生成非常非常非常长的Classpath条目,最终会轰炸Java进程.
Spring Boot文档指定:
要在不构建jar的情况下运行项目,可以使用"bootRun"任务
但是,如果插件要生成如此长的类路径,那么这种方法似乎不起作用.
这个项目可能会证明这个问题:
https://github.com/apereo/cas-gradle-overlay-template
在cas/build.gradle文件中,可以添加依赖项来观察行为:
compile "org.apereo.cas:cas-server-support-json-service-registry:${project.'cas.version'}"
该项目包含以下依赖项:
dependencies {
compile "somewhere:something:somehow@war"
}
这根本没有问题bootRun; 但是,当任何其他编译/运行时依赖项添加到项目时,所有依赖项都可以传递或以其他方式添加到类路径中bootRun以便执行.
我也尝试创建一个"路径"JAR,希望插件/ Java可以简单地使用该Class-PathJAR清单中的条目来运行Web应用程序,并且传递给java命令的类路径条目将会缩短.然而,这并没有产生任何影响,java只是再次崩溃.
请注意,将Web应用程序作为可执行jar运行,java -jar app.war可以很好地处理所有依赖项等.
让其他人遇到类似问题吗?
| 归档时间: |
|
| 查看次数: |
1234 次 |
| 最近记录: |