我正在尝试使用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
对我来说,似乎在CF环境中没有正确安装Java。但是如何调试呢?
我真的希望有人知道答案:)谢谢!
编辑:我发现我必须设置JAVA_HOME的环境变量但是要做什么?如何找到Java Path?
问候,ekuL
请参阅health-check-type attribute上的文档
使用
health-check-type
属性将health_check_type
标志设置为port
或none
。如果你没有提供health-check-type
属性,它默认为port
。--- ... health-check-type: none
覆盖此属性的命令行选项是
-u
。
如果您的进程不像绑定到端口的Web应用程序那样使用none
,而只是打印一些日志的后台工作程序。
这是Cloud Foundry非常不友好的一点,默认情况下它没有设置$ JAVA_HOME。
以下是我解决这个问题的方法。
Dist Zip
容器将您的应用程序推送到CF,这样您就可以依靠构建包本身来查找Java路径。(https://github.com/cloudfoundry/java-buildpack/blob/master/docs/container-dist_zip.md)Start Command
设置$ JAVA_HOME,如:JAVA_HOME=.java-buildpack/open_jdk_jre/bin/
java安装路径直接位于构建包下。 /home/vcap/app/.java-buildpack
。如果使用命令行查看CF,则可以找到它。