go-编辑器GoLand

go-编辑器GoLand


前篇

由于 vscode 的 go 编码体验不友好, 只能用 GoLand 了.


go get

  • 非模块化情况

    直接在 import 的地方按 alt + enter 去下载.

  • 模块化情况

    cd 到模块化目录执行 go mod vendor, 然后 模块化目录 sync 一下


破解

参考: IDEA 2019.3激活破解教程(永久, 适用于jetbrains全系列产品)- https://juejin.im/post/5df8a5a5e51d4557f0460990

前置物料

  1. 这里使用的是 GoLand 2019.2.3 版本, 官网下载地址: https://download-cf.jetbrains.com/go/goland-2019.2.3.exe
  2. jetbrains-agent.jar

流程

  1. 安装 goland-2019.2.3.exe. 选择试用,

  2. jetbrains-agent.jar. 丢到某个目录下, 如: D:\GoLand 2019.2.3\bin\jetbrains-agent.jar

  3. Help -> Edit Custom VM Options …, 将入一行代码指向 jar 包.

    1
    -javaagent:D:\GoLand 2019.2.3\bin\jetbrains-agent.jar

    然后重启编辑器.

  4. Help -> Register, 选择 License server 方式,地址填入: http://jetbrains-license-server, 点击 Activate

  5. done. 查看一下. Help -> About


设置项目的 GOPATH

import 项目内的 package 时, 如果项目不再 环境变量 GOPATH 时, 可以通过设置 项目GOPATH 来 import package

File -> settings -> go -> gopath, 在 project GOPATH 中 添加 当前项目即可.


找出未使用的 方法/变量

ctrl + shift + alt + i

输入 unused


同步设置到 GitHub

以后不同机子直接同步这个仓库即可

  1. 在 GitHub 上创建一个 新仓库
  2. 编辑器 file -> settings -> plugins 下载插件: Settings Repository, 重启编辑器
  3. File -> Settings Repository, url 填上仓库地址, 可以是 git 连接: git@github.com:yangxuan0261/goland-settings.git

每次执行 Update ProjectPush 操作时,或者当关闭项目或退出 IntelliJ IDEA 时,计算机的本地设置将自动与远程仓库中的设置同步。

如果要禁用自动设置同步,请导航到 File | Settings | Tools | Settings Repository 并禁用 Auto Sync 选项。您可以通过从主菜单选择 VCS | Sync Settings 来手动更新设置。

取消自动同步

file -> settings -> tools -> settings repository, 取消勾选 auto sync


常用快捷键

  • ctrl + shift + space : 智能提示
  • ctrl + shift + c : 拷贝当前文件 绝对路径, 如: F:\a_link_workspace\go\GoWinEnv_Mars\src\mars\module\rpc\rpc.go
  • ctrl + shift + alt + c : 拷贝当前文件 相对路径 (unix 路径) 如: src/mars/module/rpc/rpc.go:14
  • ctrl + shift + / : 批量注释

踩坑

报错 模块不应该存在

具体报错: $GOPATH/go.mod exists but should not. 产生原因:开启模块支持后,并不能与$GOPATH共存,所以把项目从$GOPATH中移出即可.

具体解决方法如下(针对goland):途中所示的框框里的内容移除即可

参考: https://blog.csdn.net/WatermelonMk/article/details/104789411


项目索引失效

  • 重建索引依旧失效

    image-20220919101813526

  • 解决办法: 重新拉一下项目即可