- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
你能告诉我,是否可以使用Chef和windows_package
删除Java JDK包,或者我必须执行命令静默卸载?第一个选择会更好。
我已经尝试过这种方法:
windows_package node['name']['JDK1.6'] do
action :remove
end
甚至添加了选项installer_type :custom
,仍然出现此错误:
FATAL: Mixlib::ShellOut::ShellCommandFailed: windows_package[Java(TM) SE Development Kit 6 Update 35] (line 4) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0, 42, 127], but received '1603'
---- Begin output of MsiExec.exe /I{32A3A4F4-B792-11D6-A78A-00B0D0160350} /qn ----
STDOUT:
STDERR:
---- End output of MsiExec.exe /I{32A3A4F4-B792-11D6-A78A-00B0D0160350} /qn ----
Ran MsiExec.exe /I{32A3A4F4-B792-11D6-A78A-00B0D0160350} /qn returned 1603
好吧,我没主意了。上official Opscode site我找到了这个信息:
:remove:删除包。由于许多应用程序卸载程序不支持完全静默/安静模式,因此删除操作完全是偶然的。
但据我所知,JDK支持静默卸载。
那么 - 我应该如何执行此操作才能正确卸载软件包?这可能吗?
非常感谢您的每一个帮助。
<小时/>规范:
如果您需要更多信息,请随时询问。
最佳答案
好吧,我已经完成了自己的实现。对于那些也需要这个的人:
# variable 'code' is for JDK version code from registry.
# Uninstall comand: MsiExec.exe /quiet /X[CODE]
# Codes are in regkey HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Be aware to check key for JDK, not JRE!
remove_command = "MsiExec.exe /quiet /X#{code}"
execute "Remove JDK from system" do
command remove_command
returns [0,1605] # 1605 for non-existing product error
end
例如,对于 JDK 1.6.35(有问题中提到的),代码应该是
code = '{32A3A4F4-B792-11D6-A78A-00B0D0160350}'
看来这与 Chef 使用的命令不同:
MsiExec.exe/I{32A3A4F4-B792-11D6-A78A-00B0D0160350}/qn
MsiExec.exe/quiet/X{32A3A4F4-B792-11D6-A78A-00B0D0160350}
也许有人会发现这很有用。
关于java - 与 Chef 一起拆除包装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31826371/
在我们的应用程序中,我们有几个 UITableView,它们具有网络支持的数据源,实际填充这些数据源可能需要一些时间。以下是通常发生的情况: 用户触发 View 。 在 viewDidLoad 中,创
有没有一种方法可以分解 JavaScript 中的闭包以确定函数是什么以及作用域是什么? 或者,也许更简洁,有没有办法在 JavaScript 中序列化闭包? 编辑 我想知道是否给了我一个声明如下的函
我的应用程序有两个部分。它们每个都有自己的 saga 中间件,但两者都不会同时实例化。它总是一个或另一个。例如,一个 saga 处理登录,另一个处理主页。 我想知道在我的应用程序的两个部分之间导航时应
我想让 CI 构建(例如 Hudson)设置和拆除 Oracle 11g 模式,作为相当普通的 JSF/JPA 应用程序的每晚构建/测试周期的一部分。 最明显的方法是删除并重新创建所有表。虽然这感觉相
我想知道 viewDidUnload 和 dealloc 是否总是在 UIViewController 拆卸过程中连续调用。是否可以在我的 View Controller 上调用 dealloc 而无
我是一名优秀的程序员,十分优秀!