在学校的时候,初学编程语言的时候,可以说是十分难受的了

尤其是安装软件,配置环境变量,更是一头雾水。

对于我这个半年重装系统的人来说更是灾难了,总能花上半天的时间去配置环境。(曾在 Github 上看见一个一键删除配置环境的项目,名字叫【你配吗?】)

所以如何快速配置环境也许是合格的程序员要了解的课题吧(我是这么认为的)

那又没有什么工具能满足呢?

当然有,名字就叫 Chocolatey.是一个在 Windows 下包管理软件.

你可能会说:包管理在 Linux 内核的系统或 MacOS 下挺常见的.

既然包管理如此的方便,为何不试试 Windows 下利用终端安装软件的方式呢?摆脱鼠标大师呢?(其实我之前也是鼠标大师)

安装

  1. 利用管理员权限打开 PowerShell

  2. 输入以下语句

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

如果不能使用的话,就去 Chocolatey 下载界面去找最新的

中间可能会输入几次 Y/N ,无脑Y就行

等返回输入界面,就重新

输入以下语句查看 Chocolatey 版本

choco -v

出现版本号就是安装成功

使用

假设你进入了新公司,领了台已经被重装系统的电脑,然后你安装了 Chocolatey.

开始使用 Chocolatey ,可以使用以下指令进行大概了解

choco -h

假设你要安装经典 java8 ,你可以输入以下语句

choco search java8

你可能会发现出现的是 zulu8 ,不要担心,这是 开源版 java , 你要装的是 Oracle 的 Java ,那么换个名字试试,试个 jdk8

choco search jdk8

然后第一个真的是 jdk8 ,然后你犯愁了,这是 Oracle 的吗?那么你就可以输入以下语句来查看详细信息

choco info jdk8

你看到下载界面是在 Oracle ,很惊喜,准备安装

choco install jdk8

等一会,安装完成,返回输入行后,重新打开终端输入

java

javac

是否出现相关指令就可以了

这时候,你的同事突然告诉你,你这个 Java 要和公司里环境统一,你问了一下版本号.

是191版本,你看了下自己装的是211版本

没办法只能输入以下命令卸载

choco uninstall jdk8

等待出现输入行后,再重新安装了

choco install jdk8 --version=8.0.191

此时你心里很满意,就准备看看自己用 choco 安装了那些软件

choco list --local-only

以上就是我在使用 chocolatey 常见的场景,更多的可以利用搜索引擎去寻找更多的使用方式

其他说明

chocolatey 下载慢

在 Chocolatey 中,还有一个问题是下载慢,这并不怪 Chocolatey ,他的来源挺干净的,软件基本是从官网上直接下载,然后进行安装.正是因为从官网安装,有的下载连接并没有优化国内网络线路,主要是海外线路,导致的下载慢,比方说 Github 上下的开源软件.所以对于计算机人来说走点特殊通道,很正常.这个时候 --proxy= 就很有用了

举个例子,我要通过特殊通道下载 chrome .

只需要执行以下语句即可

choco install googlechrome --proxy=127.0.0.1:8080

不过这里面用的是 HTTP 通道.至于 socks 我并没有研究过

(写道这里突然对 HTTP 通道和 Socks 通道有点好奇了,抽空了解了解,整理一下)

补充

  1. 如果在安装的过程中人为取消,造成软件安装失败,不能再次用上次的命令,而是先用 uninstall ,再用 install 进行安装,当然也可以用 --force 强制安装.

  2. 如果在 Windows 上设置了全局代理,那么 chocolatey 是直接识别的,无需手动加上 --proxy .

利用 chocolatey 做软件表

在公司开发软件的过程中,要统一的环境是必不可少的,如果大家都使用 chocolatey ,无疑能让环境部署更方面.

所以我可以写一个 config 文件,把要用的软件和软件版本写上去.

package.config

<?xml version="1.0" encoding="utf-8"?><packages><package id="jdk8" /><package id="googlechrome" version="71.0.3578.98" /><package id="vscode" /><package id="intellijidea-community"></packages>

安装:

choco install package.config

注意写好文件的位置和名字

补充

文件名后缀一定要是.config

Java 多版本切换

java 经历了众多版本的迭代,现在已经 java 18了.

比方说我现在主要的运行环境是 java 8,但是有的时候要用 BurpSuite ,要求的最低版本是java 11

这时候用 choco 安装了两个版本的 java,怎样让他在不同的情况下能够实现版本切换.

实际上挺简单的,我们去环境变量里的 path 里看一眼,发现 java 11 在上面 java 8 在下面

如果我此时在终端上输入

java --version

会出现此内容

现在出现的是 java11 的版本内容

如果此时我把 java 8 往上移会怎么样

在终端继续输入版本检测

java -version

此时出现了 java 8 的介绍

所以要使用那个 java 版本就在所有的 java 版本里的最前面就行.

(要是问我能不能在终端里改?我个人最多知道 set path + 路径,并没有找到相关的命令,所以这时候还得用鼠标操作一下)

Chocolatey 食用说明相关推荐

  1. chocolatey的使用

    关于chocolatey的一些命令,此博客描述了一些,更多命令见官网(在这些命令之前加choco就可以,如choco -list) 首先是安装chocolatey,(默认安装C盘,安装到D盘跳过此段见 ...

  2. Git 简易食用指南 v2.0

    写在前面 一开始我们先聊一聊版本控制,什么是版本控制呢? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统.具体大类分为: 本地版本控制系统 集中式版本控制系统SVN 分布 ...

  3. Windows之Chocolatey:windows下的apt-get即Chocolatey简介、安装、使用方法之详细攻略

    Chocolatey简介 Chocolatey 是 windows 下一款命令行包管理软件 ,简单说这就是 Windows 的 apt-get.习惯 Linux 操作方式并非常想用它操纵 Window ...

  4. win11安装chocolatey软件包管理工具(win版)

    以管理员身份打开powershell,运行如下安装脚本: Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePo ...

  5. 【Chocolatey】安装python3

    目录 前言 准备 安装python3 编写 python 程序 Helloworld 前言 win10 Chocolatey : 0.10.15 准备 安装Chocolatey.参考这里. 查找pyt ...

  6. 【Chocolatey】查找包

    前言 win10 Chocolatey : 0.10.15 查找包 打开查找页面: https://community.chocolatey.org/packages 输入要查找的包,比如:pytho ...

  7. windows安装 Chocolatey

    前言 win7 win7 自带 powershell v2,需要升级 powershell 才能安装成功. Chocolatey Chocolatey是一个Windows上的包管理器,类似于linux ...

  8. 开始食用grpc(之一)

    开始食用grpc(之一) 转载请注明出处:https://www.cnblogs.com/funnyzpc/p/9501353.html ```   记一次和一锅们压马路,路过一咖啡厅(某巴克),随口 ...

  9. 通过Chocolatey软件包管理器安装.NET Core

    在Linux的世界里,有了yum/apt-get百分之九十的软件都可以通过它来安装管理.但是在Windows系统上,装个软件还是挺折腾的.比如我要装个Chrome浏览器,我先得打开IE浏览器吧,我还打 ...

最新文章

  1. Lua入门系列----pil学习笔记之Getting Start
  2. 《深入理解java虚拟机》
  3. python3 json安装_python3下JSON和JsonPath
  4. Requirejs快速使用
  5. Oracle在线重定义
  6. 计算机网络信息安全的含义,计算机网络信息安全内涵及其重要性
  7. eclipse部署web项目
  8. 实战渗透 | 向吃鸡外挂站开炮
  9. php的浏览历史怎么做,php浏览历史记录的方法
  10. Spring AOP(三)--XML方式实现
  11. mysql安装教程8.0.21安装,Windows系统下MySQL8.0.21安装教程(图文详解)
  12. php poi,GitHub - satthi/poi-php: poi-php
  13. c语言存储类型重要吗,C语言储存类别(Storage Class)
  14. Swift之类型转换
  15. JS高级程序设计2nd部分知识要点3
  16. python整数运算定律_PHP 操作redis 详细讲解
  17. 【学习框架】jeeSite 【maven项目】导入后转成web项目 【转载加原创】
  18. php autosub,教你用PHP实现微信小程序人脸识别刷脸登录功能
  19. shell编程复习 第二次
  20. Gitea:从SVN迁移到Git

热门文章

  1. CORE-ESP32C3|eink|日期格式化|IO11解锁|墨水屏操作库|SNTP自动同步|局部刷新|全局刷新|LuatOS-SOC接口|官方demo|学习(12):简单日期显示
  2. 一人之辩,重于九鼎之宝
  3. 从零开始自制一个OS
  4. Javascript中的定时器有哪些?他们的区别及用法是什么?
  5. linux默认归档目录,在 Linux 中如何归档文件和目录
  6. 单片机|自动宠物喂食器方案
  7. 信息系统项目管理师第三版 pdf可编辑_信息系统项目管理师教程(第三版)——可行性研究...
  8. autoit学习笔记---“While…WEnd”循环
  9. 【电子书制作软件】云展网教程 | 如何获得书橱的嵌入代码?
  10. 谷歌浏览器记住的密码如何查看