加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 为当前的chef-client运行设置环境变量

发布时间:2020-12-14 05:43:14 所属栏目:Windows 来源:网络整理
导读:我正在尝试使用chef安装OpenJDK,以及下载 Eclipse并在Windows 2008节点上使用p2 director安装一些插件. OpenJDK安装并设置我的环境变量JAVA_HOME并将其添加到路径中. ?但是,在我关闭并重新打开PowerShell之前,此更改不会生效.厨师 – 客户端运行需要在当前会
我正在尝试使用chef安装OpenJDK,以及下载 Eclipse并在Windows 2008节点上使用p2 director安装一些插件. OpenJDK安装并设置我的环境变量JAVA_HOME并将其添加到路径中.
?但是,在我关闭并重新打开PowerShell之前,此更改不会生效.厨师 – 客户端运行需要在当前会话中运行eclipse p2导演.有没有办法做到这一点,我只能运行一次厨师 – 客户?

在我安装openJDK的方法中,我包括:

env "JAVA_HOME" do
  value 'C:Program FilesZuluzulu-8'
end

env "path" do
  delim ";"
  value '%JAVA_HOME%bin'
  action :modify
end

#For Command Prompt
execute "setPathCMD" do
  command "set PATH=#{node['java']['path']}bin;%PATH%"
end
#For PowerShell
powershell_script "setPathPS" do
  code <<-EOH
  $env:Path="#{node['java']['path']}bin;$env:Path"
  EOH
end

ENV['Path'] += ";C:Program FilesZuluzulu-8bin"

在安装eclipse插件的方法中,我有:

if not node['eclipse']['plugins'].empty?
  node['eclipse']['plugins'].each do |plugin_group|
    repo,id = plugin_group.first
    execute "eclipse plugin install" do
      command "#{node['eclipse']['unzip_location']}/eclipse/eclipse.exe -application org.eclipse.equinox.p2.director -noSplash -repository #{repo} -installIUs #{id}"
      action :run
    end
  end
end

解决方法

尝试使用setx:

execute 'set java_home' do
  command "setx -m JAVA_HOME "C:Program FilesZuluzulu-8""
  only_if { ENV['JAVA_HOME'] != 'C:Program FilesZuluzulu-8' }
end

# Set JAVA_HOME for this process
ENV['JAVA_HOME'] = 'C:Program FilesZuluzulu-8'

# do something similar for path...

改编自visualstudio cookbook,用于启用NuGet包恢复:
https://github.com/daptiv/visualstudio/blob/master/recipes/nuget.rb

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读