Cloud Foundry错误找不到JAVA_HOME

时间:2016-05-10 11:23:07

标签: java cloudfoundry pivotal-cloud-foundry

我正在尝试使用Pivotal的PCF Dev进行Cloud Foundry开发。

我想设置我的简单独立jar文件,每个文件只有stdout你好。我推了它,一切似乎都很好,除了开始。

一开始,我收到以下日志错误:

2016-05-10T13:09:45.28+0200 [APP/0]      ERR bash: JAVA_HOME: No such file or directory

我的manifest.yml

applications:
- name:    cf-test
 no-route: true
 memory:  128M
 instances: 1
 path: /bin/test.jar
 build: https://github.com/cloudfoundry/java-buildpack.git

对我而言,似乎Java并未在CF环境中正确安装。但是如何调试呢?

我真的希望有人知道答案:)谢谢!

编辑: 我发现我必须设置JAVA_HOME的环境变量但是要做什么?如何找到Java Path?

此致 ekuL

2 个答案:

答案 0 :(得分:1)

请参阅health-check-type attribute

上的文档
  

使用health-check-type属性将health_check_type标记设置为portnone。如果您未提供health-check-type属性,则默认为port

---
  ...
  health-check-type: none
     

覆盖此属性的命令行选项为-u

如果您的流程与绑定到端口的Web应用程序不同,请使用none,而只是打印一些日志的后台工作程序。

答案 1 :(得分:0)

这是Cloud Foundry的一个非常不友好的地方,它默认情况下未设置$ JAVA_HOME

这是我解决此问题的方法。

  1. 使用Dist Zip容器将您的应用程序推送到CF,这样您就可以依靠build pack本身来查找Java路径。( https://github.com/cloudfoundry/java-buildpack/blob/master/docs/container-dist_zip.md

  2. 使用Cloud Foundry的Start Command设置$ JAVA_HOME,例如: JAVA_HOME=.java-buildpack/open_jdk_jre/bin/

java安装路径直接在build pack下。 /home/vcap/app/.java-buildpack。如果使用命令行查看CF,则可以找到它。