java - CloudFoundry Grails-无法检测Java编译器,请确保您使用的是JDK而不是JRE

标签 java grails groovy cloudfoundry

我有一个非常奇怪的问题,当我将grails应用程序部署到CloudFOundry(run.pivotal.io)时,会遇到奇怪的异常。

2015-02-16T11:12:18.000+00:00 [App/0] OUT at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:370)
2015-02-16T11:12:18.000+00:00 [App/0] OUT at org.vertx.java.platform.impl.java.JavaVerticleFactory.createVerticle(JavaVerticleFactory.java:51)
2015-02-16T11:12:18.000+00:00 [App/0] OUT java.lang.RuntimeException: Compilation failed
2015-02-16T11:12:18.000+00:00 [App/0] OUT vert.x-eventloop-thread-2] ERROR impl.DefaultContext - Unhandled exception
2015-02-16T11:12:18.000+00:00 [App/0] OUT ... 7 more
2015-02-16T11:12:18.000+00:00 [App/0] OUT Caused by: java.lang.RuntimeException: Unable to detect java compiler, make sure you're using a JDK not a JRE!
2015-02-16T11:12:18.000+00:00 [App/0] OUT at java.lang.Thread.run(Thread.java:745)
2015-02-16T11:12:18.000+00:00 [App/0] OUT at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
2015-02-16T11:12:18.000+00:00 [App/0] OUT at org.vertx.java.platform.impl.java.CompilingClassLoader.<init>(CompilingClassLoader.java:108)
2015-02-16T11:12:18.000+00:00 [App/0] OUT at org.vertx.java.platform.impl.DefaultPlatformManager$21.run(DefaultPlatformManager.java:1740)
2015-02-16T11:12:06.000+00:00 [App/0] OUT Configuring Spring Security Core ...
2015-02-16T11:12:00.000+00:00 [App/0] OUT [CONTAINER] udAutoReconfigurationApplicationContextInitializer INFO Adding cloud service auto-reconfiguration to ApplicationContext
2015-02-16T11:11:58.000+00:00 [App/0] OUT [CONTAINER] org.apache.tomcat.util.digester.Digester INFO TLD skipped. URI: http://www.springframework.org/tags/form is already defined
2015-02-16T11:11:58.000+00:00 [App/0] OUT [CONTAINER] org.apache.tomcat.util.digester.Digester INFO TLD skipped. URI: http://www.springframework.org/tags is already defined

那是什么?
在BootStrap.groovy中,我定义了-
def init = { servletContext ->
vertxPlatformManager = PlatformLocator.factory.createPlatformManager()
URL[] classpath = [new File("src/java/pizzaVerticles/src/vertx/java/hello").toURI().toURL()]
vertxPlatformManager.deployVerticle("RateFetcherVerticleFirebase.java", null, classpath, 1, null, null)
vertxPlatformManager.deployVerticle("Server.java", null, classpath, 1, null, null)
vertxPlatformManager.deployVerticle("SocialTweety.java", null, classpath, 1, null, null)
}

还有其他一些东西,但是它们是数据库的记录,可以正常工作。

首先,我遇到了找不到资源等错误的问题:Server.java

这三个Java文件均出错。然后,我将这些java文件放在web-app文件夹中,并在创建war时也将它们拾取。但是现在我有一个奇怪的异常(exception)。谷歌搜索周围,找不到任何相关。非常感谢您的帮助,谢谢!

我是CloudFoundry的新手。应用程序在grails,vertx上运行,并使用gradle构建并部署到CF。在本地运行时工作正常。

最佳答案

尝试运行本教程(http://docs.cloudfoundry.org/buildpacks/java/gsg-grails.html),看看它是否首先起作用,然后尝试找出您不起作用的地方。

关于java - CloudFoundry Grails-无法检测Java编译器,请确保您使用的是JDK而不是JRE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28541627/

相关文章:

json - 如何从 JSON 中获取特定的数组节点并使用 groovy 逐个打印?

jenkins - 如何使用 Jenkins Pipeline Groovy 脚本检索当前工作区?

java - 持久化 API 的类注释与接口(interface)

JavaFX(Java 8 Update 40) 警告对话框无法成功重绘和调整大小

sql-server-2008 - 在grailsCentral中找不到 Artifact net.sourceforge.jtds:jtds:zip:1.2.6

grails - 如何在单元测试下的 Grails 服务中注入(inject)字段的模拟(使用 Autowiring )?

grails - 在 Controller 中调用update()后,Grails会更改默认显示 View

java - 如何在Java中提供本地PDF文件的下载?

java - 无法使用 Class.forName() 找到类

grails - Grails NumberFormatException