如何在chef中接受oracle java下载条款
我正在使用ark从oracle下载下载jdk7u51如何在chef中接受oracle java下载条款,java,chef-infra,Java,Chef Infra,我正在使用ark从oracle下载下载jdk7u51 ark 'jdk' do url 'http://download.oracle.com/otn/java/jdk/7u51-b13/jdk-7u51-linux-x64.tar.gz' path "/home/myapp/apps/jdku51" owner 'myapp' group 'myapp' action :put end 但是,这不会下载实际文件,因为不接受许可协议 因为我使用的是vagrant,所以
ark 'jdk' do
url 'http://download.oracle.com/otn/java/jdk/7u51-b13/jdk-7u51-linux-x64.tar.gz'
path "/home/myapp/apps/jdku51"
owner 'myapp'
group 'myapp'
action :put
end
但是,这不会下载实际文件,因为不接受许可协议
因为我使用的是vagrant,所以我在.kitchen.yml中添加了以下内容。但这没有帮助
suites:
- name: default
run_list:
- recipe[java]
attributes:
java:
jdk_version: 7
oracle:
accept_oracle_download_terms: true
jce:
enabled: true
接受oracle许可条款的最佳方式是什么?找到了答案。这对我有用
remote_file "#{Chef::Config[:file_cache_path]}/jdk-7u51-linux-x64.tar.gz" do
source "http://download.oracle.com/otn/java/jdk/7u51-b13/jdk-7u51-linux-x64.tar.gz"
headers({"Cookie" => "oraclelicense=accept-securebackup-cookie"})
end
不使用OpenJDK有什么特别的原因吗?我不知道ark是什么,但是我不得不使用wget下载JDK,并且您必须添加一个cookie来下载它。我相信它的
Cookie:oraclelicense=accept securebackup Cookie
@chrylis:主要原因是我想将它安装在/home/newuser/java中一个单独的位置,以便进行本地测试。我不知道如何强制RPM在本地安装,即在用户主页中location@user1587001在尝试重新发明轮子之前,你有没有看过《方舟》吗(它在引擎盖下使用了改进版的方舟提供商)?@user158701你在这里说什么?jce是jdk的一部分,就像jre一样,如果你有一个简单的jre,它很可能根本不是由食谱安装的。