Windows 开发环境配置 + 软件配置。
一、环境配置
Windows 的环境变量配置比较简单,它是以键值对(key-value)的方式配置的。
在 Windows 系统中,有两种变量:用户变量和系统变量。
-
用户变量:只有当前登录用户能可以使用的变量,类似于 Linux 系统中用户目录下的
.bashrc
文件; -
系统变量:对所有用户生效、所有用户可以使用的变量,类似于 Linux 系统中的
/etc/profile
文件;
本文都以配置 系统变量 为例,但是配置方式不限,配置的 value
路径要替换自己本机的安装路径。Windows 配置变量一般有两种方式:
- 直接在 Path 里编辑添加软件的执行文件所在的目录(一般是软件的 bin 目录)。
- 新建一个变量,设置变量名称(一般随便起,部分有约定,比如
JAVA_HOME
,很多需要 java 环境的软件默认查询JAVA_HOME
变量名)和路径(安装软件的根目录)的 key-value,然后在 Path 中引用%key%
。
本文使用命令行测试时,工具可以是 PowerShell(PS)、cmd、Git Bash(推荐)、cmder 等。为了防止出错,最好使用 管理员身份 运行这些工具。
1. JDK
第一个配置附带了截图,后面的就不带了 😉,只是帮助理解一下上面的第二种配置说明。第一种是比较简单的,直接把软件执行程序路径添加在 Path 中。
key | value |
---|---|
JAVA_HOME | D:\software\java |
CLASSPATH | .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar |
Path 配置 %JAVA_HOME%\bin
命令行测试:java -version
Tip: jdk1.5 以后 CLASSPATH 可以不用再进行设置;
2. Maven
Maven 官网下载特别慢,甚至打不开,可以在 https://archive.apache.org/dist/maven/maven-3/ 下载。
key | value |
---|---|
M2_HOME | D:\develop\software\maven-3.9.9 |
Path: %M2_HOME%\bin
命令行测试:mvn -version
1 | <mirror> |
3. Gradle
Gradle 推荐使用最新版的 IDEA(2023.3.x+),能够使得本地的 Gradle 的作用发挥出来。否则还是推荐配置 GRADLE_USER_HOME
环境变量来定义 Gradle 下载依赖和不同版本的路径,避免使用默认 C 盘的目录。
下载 后解压。配置环境变量:
key | value |
---|---|
GRADLE_HOME | D:\develop\software\gradle-8.8 |
PATH: %GRADLE_HOME%\bin
命令行测试:gradle -V
配置下载源,以下脚本来自 B 站霍老师的视频,且仅在 Gradle Version > 6.8 时可用:
1 | fun RepositoryHandler.enableMirror() { |
- gradle 下载源查找顺序
1 | # 排列顺序即加载顺序 * 代表可以为任意名称 |
GRADLE_HOME
环境变量是配置的本地安装的 Gradle 软件目录。
若不配置GRADLE_USER_HOME
,默认位置为 ~/.gradle。
4. MySQL8
使用安装文件(exe 或者 msi)安装一般没有什么问题,安装过程中会提示将安装路径加入环境变量。
这里只介绍使用 压缩包 的方式。
key | value |
---|---|
MYSQL_HOME | D:\software\MySQL8.0.36 |
Path: %MYSQL_HOME%\bin
命令行运行以下命令完成初始化:
1 | # service-name 自己命名,如果不写默认为 mysql,只安装一个版本使用的话可以不指定 |
TIP:安装多个不同 MySQL 版本的时候,需要先 新建/编辑
my.ini
文件先修改端口号再初始化(即生成 data 目录),避免端口冲突。
忘记密码
如果忘记了 root 用户的密码,尝试使用以下方式:
修改 MySQL /etc/my.cnf
配置文件:
1 | ... |
进入 MySQL bash:
1 | mysql -uroot |
然后再次进入 MySQL 终端:
1 | mysql -u root |
修改完成后打开 /etc/my.cnf
文件移除 skip-grant-tables
配置,尝试使用新密码登录。
5. MariaDB
key | value |
---|---|
MARIA_HOME | D:\software\mariadb-11.0.2 |
Path: %MARIA_HOME%\bin
命令行运行以下命令完成初始化:
1 | # 名称自己起 |
配置文件(如果本机安装之前还有 MySQL 数据库,推荐解压后先修改配置文件,更改默认端口):
1 | [mysqld] |
- 如果本机已经安装了 MySQL 数据库,那么使用这种方式安装需要在初始化数据库后,先修改
my.ini
文件,修改端口号避免端口占用导致启动失败,然后启动服务。- FEEDBACK 启动成功但是连接失败官方说明:https://mariadb.com/kb/en/feedback-plugin/
- 官方配置文档:https://mariadb.com/kb/en/configuring-mariadb-with-option-files/
- Unicode 排序规则:https://www.monolune.com/articles/mysql-utf8-charsets-and-collations-explained/
6. PostgreSQL
Path:D:\software\pgsql\bin
命令行运行以下命令完成初始化(先创建 data 目录):
1 | # 初始化 initdb --help 查看帮助信息 |
- 推荐连接使用 Dbeaver、Dbgate 等开源数据库管理工具;
- pgsql 的配置文件在 data 文件夹中
postgres.conf
。
7. Tomcat
Tomcat 有安装版和压缩包两种,如果是安装版,需要先配置好jdk。
key | value |
---|---|
CATALINA_HOME | D:\software\tomcat8.5 |
Path:%CATALINA_HOME%\bin
。
- Tomcat启动的日志输出的默认字符集编码是 utf-8,但是 window 的 shell 是 gbk 编码,所以如果想要在 window 下正常输出,就要修改 Tomcat 的日志打印编码。
- 编辑tomcat安装路径下的
conf/logging.properties
文件,设置java.util.logging.ConsoleHandler.encoding = GBK
,保存重启即可。
8. NodeJs
Windows 中安装的 nodejs.msi
中自带了 npm
,而 Linux 需要单独安装(使用包管理器的时候)。另外,Windows 中安装后需要修改安装目录的权限,不然只有管理员才能操作该目录,对于当前用户是非常不方便的。
在安装目录即 nodejs
文件夹,单击右键,选择属性,点击 “安全” 标签,选择 “User” 用户,点击编辑,把权限都勾上,保存退出。
命令行做一些配置:
1 | # 配置腾讯镜像源 |
Path:D:\software\develop\nodejs\node_global
- 配置 Path 是为了使用 全局安装 的工具(例如 yarn、pnpm 等)。
- 临时使用阿里镜像源:
npm install --registry=https://registry.npmmirror.com
。
9. Jetty
下载后解压,之后进入 jetty 的安装目录。运行以下命令($JETTY_HOME
是安装目录):
1 | 为当前基目录添加标准文件及文件夹 |
之后就可以在浏览器使用 localhost:9999
进行访问了。
10. Rust
创建 ~/.cargo/config.toml
文件,编辑填写以下内容,保存。
1 | [source.crates-io] |
- Rust 的很多源只负责更新索引,实际下载 crates 的时候还是很慢,实测使用 中科大 的镜像源无论是更新索引还是下载 crates 都很快。
- 如果正在使用的 Rust 版本低于 1.38,则需要修改的文件为 config 文件,而不是 config.toml 文件。
11. Python
1 | # 设置镜像源 |
12. Go
Go 的安装包/依赖都是在 Github 上,国内比较慢,最好设置代理。代理配置:
1 | $ go env -w GO111MODULE=on |
二、软件
1. VsCode
自 VsCode 1.7x 版本之后 exe 安装文件也可以选择安装路径了,并且国内下载速度也很快,但是插件默认依然在 C 盘中,当然你可以打一个软连接映射,或者使用便携版本来自定义插件的安装位置。
2. Vivaldi
Vivaldi 官网在国内是访问不到的,可以在 hosts
文件中添加以下内容再次访问:
1 | 172.67.21.227 vivaldi.com www.vivialdi.com update.vivaldi.com downloads.vivaldi.com help.vivaldi.com bifrost.vivaldi.com mimir.vivaldi.com |
3. IDEA
1 | [DNS] |
三、插件
插件在精不在多。
1. 油猴插件
- 网盘有效性检查
- 网盘直链下载助手(需要关注公众号,目前好用的不多了)
- Github 增强 - 高速下载
- 【增强版】CSDN/知乎/哔哩哔哩/简书免登录去除弹窗广告
2. Edge
3. Firefox
- 可可翻译
- TWP
- Ads
- Aria2 Download Manager Integration 配合 motrix 或其它支持 rpc 的下载工具使用
四、其它
1. 命令操作
目标 | 操作 |
---|---|
控制面板 | win + r 输入 appwiz.cpl 回车 |
系统变量 | win + r 输入 sysdm.cpl 回车 |
磁盘管理 | win + r 输入 diskmgmt.msc 回车 |
服务 | win + r 输入 services.msc 回车 |
电脑信息 | win + r 输入 winver 回车 |
win + 数字键 | 快速切换对应位置的窗口 |
2、删除开机多余启动项
Win + R,输入 `msconfig`,点击确定,选择 “引导” 标签,选择 **非当前OS** 记录,点击删除并应用,按照提示重启即可。管理员身份命令行运行:
1 | # 查看启动项 |
3. PowerShell 运行脚本报错
管理员身份命令行运行
1 | 输入以下命令,选择 Y |
PS 有四种策略:
策略 | 说明 |
---|---|
Restricted | 禁止运行任何脚本配置文件(默认) |
AllSigned | 可以运行发布签名的脚本和配置文件,包括本地计算机上编写的脚本 |
RemoteSigned | 要求从网络上下载的脚本和配置文件由可信者发布签名,不要求本地计算机上编写的脚本进行签名 |
Unrestricted | 可以运行未签名的脚本 |
4. Vmware 虚拟机配置双网卡
使用 VMWare 时,推荐创建的虚拟机配置双网卡,默认的使用 NAT 模式,新添加一个使用 仅主机 模式,然后进行修改配置。这样就算以后连接无数个无线网,电脑依然能上网,但是使用 SSH 远程连接时依然不用修改 Linux 的网络配置文件。实现了一次配置,永久使用的效果。配置也很简单:
在 VMWare 里创建一个虚拟机后,打开改虚拟机的设置,硬件下方的”添加“,然后在弹出的列表里选择”网络适配器“,之后点击新添加的网络适配器,选择”仅主机“。接着打开网络适配器修改 VMWare Network Adapter VMnet1 的 IP 为简单的地址,Linux 里的网络配置文件的 IP 地址不要和这个一样,因为 VM1 是本机和 Linux 虚拟机通信的 IP 地址,不能一样,推荐 VM1 10.0.0.1,Linux 配置为 10.0.0.2,简单好记。
注意: 如果是新建的虚拟机,在安装之前按照以上方法配置,安装后查看网络配置文件时或许会有两个不同的文件,比如:ens33,ens34。如果是之前已经安装过的单网卡想要配置双网卡,可以把已经存在网络配置文件复制一份,修改文件里面的内容即可。如果新建的虚拟机也是只有一个配置文件,也可以直接复制原有的文件进行修改。
另外,第一次安装后网络服务是正常的,之后换了一个无线网连接就出现了问题,可能是因为 NetworkManager 的问题,可以关闭此服务。然后重启网络。内网相通,但使用 xshell 等终端工具连不上虚拟机也连不上外网也可以尝试使用这个方法。
1 | # 关闭服务 |
Vmware 下载地址:https://softwareupdate.vmware.com/cds/vmw-desktop/ws/
其它问题
使用 VMWare 虚拟机时,如果本机开启着 VPN 时,使用其它远程工具是无法连接到本地虚拟机的,必须退出 VPN 的登录后才可以再次连接新的会话。