思有所皈,绪有所依

给万千思绪,寻一寄存之所

扩展插件

Remote-SSH

简单来说这个插件就是让VSCode打开远程主机上的某个文件夹,然后像打开本机文件夹一样进行编码操作。

配置主机及账号

使用快捷键Ctrl+Shift+p打开命令面板,输入ssh,选择Remote-SSH: Open SSH Configuration File...,格式示例:

1
2
3
Host your-server-alias
HostName 192.168.1.1
User root

如果使用密钥文件登录(Public Key),则增加 IdentityFile 参数,指向密钥文件。

Remote Development

这是一个远程开发插件包,包含了Remote-SSH、Dev-Containers、WSL等插件,可以快速在远程服务器上进行开发。

设置

选择默认终端

  1. 在VSCODE中用快捷键 Ctrl + Shift + p 打开命令面板;
  2. 输入 Terminal: Select Default Profile
  3. 选择使用的终端类型,Windows下一般是 PowerShell,Linux 则是 bash

解决mvn编译输出乱码的问题

乱码及分析

最近的某个项目从jdk17升级到jdk21,mvn clean install的时候,某些输出为中文的地方变成了乱码。搜索出的资料大多数都是IDEA相关,解决办法要么是设置IDEA的File encoding,要么是在pom.xml里设置编码,都与我的这个问题不符。

从现象来看应该是jdk版本导致的,因为我运行mvn命令是在PowerShell下,不是IDEA。最先怀疑是不是jdk厂商的问题,不同厂商的实现有差异。后来都用Oracle提供的JDK进行测试,还是问题依旧,17中文不乱码,切换到21就乱码了。所以推测是JDK 21检测系统的local编码跟17不一样,尝试找了一下有没有设置JDK日志输出编码的参数,未果。

后来在这篇博文里找到了解决方案:关于使用gradle编译java导致中文乱码的分析以及解决(完美且分析了所有情况)

虽然该文是讲Gradle,但是这个问题的根本原因是在JDK上,仍然适合解决我遇到的问题。

解决方法

设置“使用Unicode UTF-8 提供全球语言支持”,操作路径为:控制面板-时钟和区域-区域(更改日期、时间或数字格式)-管理(更改系统区域设置)-勾选“Beta版:使用Unicode UTF-8 提供全球语言支持”,设置之后重启生效。

git tips

分支操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 查看分支
git branch

# 查看所有分支
git branch -a

# 拉取远程的最新数据
git fetch

# 切换分支
git checkout [分支名]

# 删除分支
git branch -d [分支名]

Golang环境变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 查看
go env

# 帮助
go help env
go env -h


# 变更的值
go env -changed

# 设置
go env -w GOOS=linux

# 恢复默认值
go env -u GOOS

初始化项目

1
2
go help mod
go mod init <module-name>

From Java to Go

package

Java的package是命名空间,用.分隔,并且源代码的组织(文件路径)是跟package对应。

Go也是用package来组织源代码,是module+源代码路径+package这样一种组织方式。其中module是由go mod init生成,记录在go.mod中。然后是源代码路径,顶层跟go.mod同级,最后在同一个路径下再用package来区分。

0%