使用 goland 开发 golang 项目环境配置

方式1:使用 GOPATH 和 GOROOT


在 goland 中打开:Settings - Go,会看到 GOROOT、GOPATH,其相关解释与配置如下:

  • GOROOT:对应 go 的安装路径,例如:D:\go\bin
  • GOPATH:是我们的工作空间,保存 go 代码和第三方依赖包

GOPATH可以设置多个,其中,第一个将会是默认的包目录,使用 go get 下载的包都会在第一个 path 中的 src 目录下,使用 go install 时,在哪个GOPATH中找到了这个包,就会在哪个GOPATH下的bin目录生成可执行文件。

使用GOPATH时,Go会在以下为目录中搜索包:

  • GOROOT/src:Go标准库
  • GOPATH/src:应用自身代码和第三方依赖的代码

引入包时,路径从 src 的下一级文件地址开始写,编译器会自动从 src 下开始引入,如下:

// 自定义包的绝对路径为:D:\learing\goproject\src\gocode\testproject001\model
import (
    "fmt"
    "gocode/testproject001/model"
)

在使用方式一导入自定义包时,报错如下:

main.go:5:2: package gocode/testproject001/model is not in std (D:\go\src\gocode\testproject001\model)

注意:该方式易出错,不建议使用

方式2:使用 go.mod


从 Go1.11 版本之后,已经不再推荐使用 GOPATH ,而是使用 GOMODULE 来管理程序文件。

查看项目的 go 配置


首先在终端下进入到项目目录,执行 go env 查看 go 的相关配置,具体如下:

D:\learing\goproject\src\gocode\testproject001\main>go env

set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\heliubei\AppData\Local\go-build
set GOENV=C:\Users\heliubei\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=D:\learing\goproject\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=D:\learing\goproject
set GOPRIVATE=
set GOPROXY=https://goproxy.io,direc
set GOROOT=D:\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLCHAIN=auto
set GOTOOLDIR=D:\go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.21.3
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set GOWORK=
set CGO_CFLAGS=-O2 -g
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-O2 -g
set CGO_FFLAGS=-O2 -g
set CGO_LDFLAGS=-O2 -g
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=C:\Users\heliubei\AppData\Local\Temp\go-build3874952850=/tmp/go-build -gno-record-gcc-switches

如果 GO111MODULE = off 可通过如下命令进行修改,以确保 GO111MODULE = on

go env -w GO111MODULE = on

GO111MODULE 介绍


GO111MODULE 有三个值:off、on 和 auto,具体介绍如下:

1)GO111MODULE=off,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。

2)GO111MODULE=on,go命令行会使用modules,而一点也不会去GOPATH目录下查找。

3)GO111MODULE=auto,默认值,go命令行将会根据当前目录来决定是否启用module功能。这种情况下可以分为两种情形:

  • 当前目录在GOPATH/src之外且该目录包含go.mod文件
  • 当前文件在包含go.mod文件的目录下面

go.mod 使用


1)进入项目路径下执行 go mod init + 模块名 命令,在项目文件下创建一个 go.mod 文件,具体如下:

D:\learing\goproject>go mod init goproject

go: creating new go.mod: module goproject
go: to add module requirements and sums:
        go mod tidy

我的项目目录为:D:\learing\goproject

2)引入自定义包时,路径应从 go.mod 所在的路径下写起

package main

import (
    "fmt"
    "goproject/src/gocode/testproject001/model"
)

func main() {
    //创建person结构体示例:
    p := model.NewPerson("丽丽")
    p.SetAge(20)
    fmt.Println(p.Name)
    fmt.Println(p.GetAge())
    fmt.Println(*p)
}

自定义包的绝对路径为:D:\learing\goproject\src\gocode\testproject001\model

3)成功导入自定义包

<think>嗯,用户想了解如何在Goland中配置Go开发环境。首先,我需要回忆一下相关的步骤。我记得安装Go语言环境是基础,得先下载Go,然后配置环境变量,比如GOPATH和GOROOT。GOROOT是Go的安装路径,而GOPATH是工作目录,可能用户需要注意这点。 接下来是安装Goland。用户可能需要去JetBrains官网下载,但注意版本问题。比如引用里提到2021.1.3之后的版本可能需要注册,所以可能需要提醒用户选择合适的版本或者注册账号。 然后是配置Goland。打开软件后,需要设置GOROOT,确保Goland能找到Go的安装路径。然后是GOPATH,这里用户可能容易混淆全局和项目级别的设置。根据引用中的建议,最好为每个项目单独配置GOPATH,这样不同项目之间不会互相干扰。需要详细说明如何在Goland中设置项目GOPATH。 还有创建新项目时的步骤,比如选择Go的版本,设置项目路径。可能还需要配置Go Modules,启用模块支持,设置代理,这样下载依赖更快。比如GOPROXY=https://goproxy.cn可能是个好建议。 另外,调试配置也很重要,用户可能需要配置运行/调试设置,比如生成的可执行文件路径。这里需要提到如何设置Build输出目录,避免放在全局GOPATH里。 测试环境的时候,用户可能需要写一个Hello World程序,运行看是否有输出。如果有问题,可能需要检查环境变量和路径是否正确。 最后,用户可能遇到的常见问题,比如依赖下载失败,这时候可能需要检查代理设置。或者项目结构不正确,GOPATH没有正确配置。需要提醒用户注意这些点。 根据用户提供的引用,需要正确引用[^1]和[^2]。比如配置环境变量和项目工程目录的部分要对应引用。可能引用1是环境配置和安装Goland,引用2是具体配置步骤,比如下载版本和GOPATH的设置。 现在要组织这些步骤,确保结构清晰,分点说明,每个步骤详细但不过于复杂。同时生成相关问题,可能涉及环境变量、项目配置、常见错误解决等。</think>### 如何在 GoLand 中配置 Go 开发环境 #### 一、安装 Go 语言环境 1. **下载 Go 语言安装包** 访问 [Go 官网](https://golang.org/dl/) 下载对应操作系统的安装包,并按照提示安装。 2. **配置环境变量** - **$GOROOT**:指向 Go 的安装路径(例如:`C:\Go` 或 `/usr/local/go`)[^1]。 - **$GOPATH**:设置工作目录(例如:`D:\go_workspace`),用于存放项目代码和依赖库[^2]。 - 将 `$GOROOT/bin` 和 `$GOPATH/bin` 添加到系统 `PATH` 变量中,确保终端可执行 `go` 命令。 #### 二、安装 GoLand 1. **下载 GoLand** 访问 [JetBrains 官网](https://www.jetbrains.com/go/download/other.html),选择适合的版本(如 2021.1.3 版本可免注册试用)。 #### 三、配置 GoLand 环境 1. **设置 GOROOT** - 打开 GoLand,进入 `File > Settings > Go > GOROOT`,选择 Go 安装路径。 2. **配置项目 GOPATH** - 新建项目时,在 `File > Settings > Go > GOPATH` 中,**避免使用全局 GOPATH**,建议为每个项目单独设置工作目录。 - 示例:项目路径设为 `D:\project\myapp`,GOPATH 设为 `D:\project\myapp\gopath`。 3. **启用 Go Modules** - 在 `File > Settings > Go > Go Modules` 中勾选 `Enable Go Modules integration`,设置代理加速依赖下载(如 `GOPROXY=https://goproxy.cn`)。 4. **配置 Build 输出目录** - 在 `File > Settings > Build, Execution, Deployment > Go Build` 中,指定编译生成的二进制文件路径(例如:`$ProjectDir$/bin`)。 #### 四、验证环境 1. **创建 Hello World 程序** 新建 `main.go` 文件,输入以下代码: ```go package main import "fmt" func main() { fmt.Println("Hello Golang!") } ``` 2. **运行程序** 右键点击代码,选择 `Run 'go build main.go'`,若控制台输出 `Hello Golang!`,则环境配置成功。 #### 五、常见问题 - **依赖下载失败**:检查代理设置或切换 `GOPROXY`。 - **路径无效**:确认 `GOROOT` 和 `GOPATH` 路径无空格或特殊字符。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据库内核

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值