douzhanjia0773 2015-02-24 06:46
浏览 545
已采纳

正确的方法获取golang.org/x/tools/go/ast/astutil

It seems the repository has moved from golang.org/x/tools/astutil to golang.org/x/tools/go/ast/astutil

I'm trying to build gore but it cannot found the astutil, I have the workaround to get it compiled:

mkdir $GOPATH/src/golang.org/x/tools/go/ast
ln -s $GOPATH/src/golang.org/x/tools/astutil $GOPATH/src/golang.org/x/tools/go/ast

but is this the correct way to fix this?

I've tried to remove the x/tools directory and fetch it again, using this command:

rm -rf $GOPATH/src/golang.org/x/tools 
go get -u -v golang.org/x/tools

but astutil still on the same directory (x/tools/go/astutil) instead of x/tools/go/ast/astutil

I've tried to go get -u -v golang.org/x/tools/go/ast/astutil but it seems not working:

Fetching https://golang.org/x/tools/go/ast/astutil?go-get=1
Parsing meta tags from https://golang.org/x/tools/go/ast/astutil?go-get=1
(status code 200)
get "golang.org/x/tools/go/ast/astutil?": found meta tag
main.metaImport{Prefix:"golang.org/x/tools", VCS:"git", RepoRoot:"
https://go.googlesource.com/tools"} at
https://golang.org/x/tools/go/ast/astutil?go-get=1
get "golang.org/x/tools/go/ast/astutil?": verifying non-authoritative meta
tag
Fetching https://golang.org/x/tools?go-get=1
Parsing meta tags from https://golang.org/x/tools?go-get=1 (status code 200)
golang.org/x/tools (download)
package golang.org/x/tools/go/ast/astutil?: /home/asd/Dropbox/go/src/
golang.org/x/tools exists but /home/asd/Dropbox/go/src/
golang.org/x/tools/.git does not - stale checkout?

What's the correct way to fix this?

My go version: go version go1.4.1 linux/amd64

  • 写回答

2条回答 默认 最新

  • dongsimang4036 2015-02-24 07:34
    关注

    I just tried:

    C:\Users\VonC\prog\go\src\github.com\golang\lint>go get -t -v ./...
    golang.org/x/tools/go/exact
    golang.org/x/tools/go/ast/astutil
    golang.org/x/tools/go/types
    golang.org/x/tools/go/gcimporter
    github.com/golang/lint
    github.com/golang/lint/golint
    

    That was enough to at least compile all dependent tools including golang.org/x/tools/go/ast/astutil, but not get their sources.


    For just astutil, I also tried:

    C:\Users\VonC\prog\go>go get golang.org/x/tools/go/ast/astutil
    
    C:\Users\VonC\prog\go>cd src
    
    C:\Users\VonC\prog\go\src>cd golang.org/x/tools/go/ast/astutil
    
    C:\Users\VonC\prog\go\src\golang.org\x\tools\go\ast\astutil>dir
    
     Répertoire de C:\Users\VonC\prog\go\src\golang.org\x\tools\go\ast\astutil
    
    03/02/2015  07:41    <REP>          .
    03/02/2015  07:41    <REP>          ..
    03/02/2015  07:41            16 003 enclosing.go
    03/02/2015  07:41             4 655 enclosing_test.go
    03/02/2015  07:41             9 191 imports.go
    03/02/2015  07:41            11 035 imports_test.go
    03/02/2015  07:41               211 util.go
    

    If go get golang.org/x/tools/go/ast/astutil doesn't work, try with a fresh installation of Go 1.4.2, in a separate and clean Go workspace (meaning a different GOROOT for referencing a new installation, and a different GOPATH, for referencing an empty and fresh workspace)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • dtwr2012 2015-02-24 08:14
    关注

    Solution for my problem:

    cd $GOPATH/src/code.google.com/p/
    rm -rf go.*
    
    cd $GOPATH/src/golang.org/x/
    rm -rf *
    
    go get -u -v golang.org/x/tools
    go get -u -v golang.org/x/crypto
    go get -u -v golang.org/x/image
    go get -u -v golang.org/x/mobile
    go get -u -v golang.org/x/net
    go get -u -v golang.org/x/sys
    go get -u -v golang.org/x/text
    

    Probably my fault is I go get from code.google.com/p instead of golang.org/x?

    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 矩阵分析与古诗词意境
  • ¥15 在win10 64位的vs打包MSI文件,放到win7 64位上安装成可执行exe文件后,点击程序不运行。
  • ¥50 大众点评用户浏览/消费记录爬虫
  • ¥15 求制作一个个人网页,
  • ¥15 寻涂色内存脚本作者有项目有市场有资源.却技术
  • ¥15 蓝桥杯c51单片机问题
  • ¥15 ajax跨域问题请求修改代码
  • ¥15 python matplotlib
  • ¥15 短信测压+语音,有偿,必须用Python
  • ¥20 COCOS2DX的protobuf协议注册函数问题