STDERR:命令行错误:没有这样的选项: - force-yes

时间:2017-03-10 12:41:27

标签: chef chef-solo

我正在尝试使用我的厨师食谱通过厨房 + 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

1 个答案:

答案 0 :(得分:2)

选项--force-yesapt包管理器的选项。包资源中的options选项仅允许您传递操作系统的包管理器可以理解的选项。例如在Centos中,我可以编写options '--setopt=timeout=360',这是yum的一个选项,它可以正常工作。

另外,请查看--force-yes手册页中apt实际执行的操作。

使用Chef安装和维护Java有时可能会很痛苦,因此我建议使用Java cookbook,它就像魅力一样。