我正在尝试使用我的厨师食谱通过厨房 + Vagrant 安装 Java 。操作系统 CentOS 7.3 。
因为我与Java版本引起了filesystem-3.2-21.el7.x86_64
的冲突,所以我决定强行安装。
所以我决定按照official chef documentation:
中的下一个例子安装包含选项的包
package 'debian-archive-keyring' do action :install options '--force-yes' end
我将其转换为:
package "bf-sun-java" do
version node['java_version']
action :install
options '--force-yes'
end
但我收到以下错误:
STDERR:命令行错误:没有这样的选项:
--force-yes
如果Chef不识别它,为什么在该示例中提到--force-yes
?
答案 0 :(得分:2)
选项--force-yes
是apt
包管理器的选项。包资源中的options
选项仅允许您传递操作系统的包管理器可以理解的选项。例如在Centos中,我可以编写options '--setopt=timeout=360'
,这是yum
的一个选项,它可以正常工作。
另外,请查看--force-yes
手册页中apt
实际执行的操作。
使用Chef安装和维护Java有时可能会很痛苦,因此我建议使用Java cookbook,它就像魅力一样。