如何使用opscode java cookbook(flavor = oracle)
安装多个JDK版本答案 0 :(得分:0)
尝试使用cookbook提供的java_ark资源:
# install jdk6 from Oracle
java_ark "jdk" do
url 'http://download.oracle.com/otn-pub/java/jdk/6u29-b11/jdk-6u29-linux-x64.bin'
checksum 'a8603fa62045ce2164b26f7c04859cd548ffe0e33bfc979d9fa73df42e3b3365'
app_home '/usr/local/java/default'
bin_cmds ["java", "javac"]
action :install
end
您可以在包装器食谱中多次调用java_ark
资源(使用不同的参数)。
答案 1 :(得分:0)
这就是我在节点(RHEL)上同时拥有oracle JDK7和JDK8所做的工作。
JDK7将被设置为默认值($ JAVA_HOME指向此版本的JDK i,e 7)。
在/attributes/default.rb
文件中指定以下内容
default['java']['install_flavor'] = 'oracle'
default['java']['jdk_version'] = '7'
default['java']['oracle']['accept_oracle_download_terms'] = true
然后在你的包装食谱中加入以下几行
include_recipe 'java'
#adding the below for the JDK8 installation
java_ark "oracle-jdk8-x86_64" do
url node['java']['jdk']['8']['x86_64']['url']
checksum node['java']['jdk']['8']['x86_64']['checksum']
app_home '/usr/lib/jvm/oracle-jdk8-x86_64'
action :install
end
上面的代码将在/ usr / lib / jvm /(对于RHEL / Fedora)下安装JDK7和JDK8。有关基于平台的JAVA_HOME目录的详细信息,请参阅java cookbook。
这是我引用的工作示例的链接
https://github.com/erichelgeson/jenkins-chef-dsl/blob/master/recipes/build-jdks.rb