V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
429463267

环境变量 GOPATH 是固定的,是否意味着代码库必须在指定路径下编写?

  •  1
     
  •   429463267 · Jul 8, 2021 · 2858 views
    This topic created in 1765 days ago, the information mentioned may be changed or developed.

    如题,我的 go 环境如图:

    GOPATH=D:_code\kl-go\GOPROJECT

    GOPATH 是固定的,于是我的项目代码就必须在这里:D:_code\kl-go\GOPROJECT\src

    可是我想在磁盘任意路径存放我的 go 代码,那我该如何动态维护 GOPATH 变量?

    我尝试过在 global GOPATH 以外的路径存放代码,然后 IDEA 修改 project GOPATH,发现无效,某些导包会报错。

    image

    也就是上图标记 2 中添加自定义路径,然后关掉标记 3,但是这样做不生效。

    17 replies    2021-07-13 15:59:57 +08:00
    Carseason
        1
    Carseason  
       Jul 8, 2021
    gomod
    Vegetable
        2
    Vegetable  
       Jul 8, 2021   ❤️ 1
    我看了一下发帖时间:2 分钟前。
    兄弟,2021 年了,你说这个问题一般是在两年前问的,现在大家都用 go mod,这个放哪都行
    maemual
        3
    maemual  
       Jul 8, 2021
    go mod 之前的时候确实是代码得放在 GOPATH 下。用了 go mod 之后就不需要了。
    thet
        4
    thet  
       Jul 8, 2021
    看看 go mod 怎么用吧
    huihuiHK
        5
    huihuiHK  
       Jul 8, 2021
    go mod
    xarthur
        6
    xarthur  
       Jul 8, 2021 via iPhone
    以前是,现在有了 Go mod 就无所谓了。
    ScepterZ
        7
    ScepterZ  
       Jul 8, 2021
    找个 go mod 的教程看,你这个是之前的做法了,马上就不支持了
    keepeye
        8
    keepeye  
       Jul 8, 2021
    go mod 之后,不用了。某种程度 GOPATH 可以看成是全局依赖所在位置
    429463267
        9
    429463267  
    OP
       Jul 8, 2021
    JKeita
        10
    JKeita  
       Jul 8, 2021
    go mod 不用
    mengdodo
        11
    mengdodo  
       Jul 8, 2021
    111
    5oiR5piv5YK76YC8
        12
    5oiR5piv5YK76YC8  
       Jul 8, 2021
    就是因为这个,所以有了 go mod 现在方便多了
    DefoliationM
        13
    DefoliationM  
       Jul 8, 2021
    大清亡了?
    jasonkayzk
        14
    jasonkayzk  
       Jul 9, 2021 via Android
    GOPATH 早就凉了,可有可无。
    chaodada
        15
    chaodada  
       Jul 9, 2021
    go mod 简直不要太方便
    eudore
        16
    eudore  
       Jul 12, 2021
    gopath 可以配置多个目录,第一个目录放依赖,第二个目录作为 worksapces 。

    gomod 解决了多版本和 goproxy,但是也引入了些新问题。
    nmap
        17
    nmap  
       Jul 13, 2021
    有 go mod 后,GOPATH 还保留着,应该是为了存放 mod 下载的那些 pkg
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4921 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 127ms · UTC 05:37 · PVG 13:37 · LAX 22:37 · JFK 01:37
    ♥ Do have faith in what you're doing.