go语言中一种常见的错误


本文摘自php中文网,作者尚,侵删。

本文是基于mac,安装go1.14版本之后,执行一个基本的go文件报错了。

错误现象:

执行下面的go的文件报下面的错误了

1

2

3

4

5

6

7

8

# hello.go

package main

 

import "fmt"

 

func main(){

    fmt.Println("hello world")

}

运行效果如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

?  test go run hello.go

# runtime/internal/atomic

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:13:6: Load redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:16:24

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:19:6: Loadp redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:22:32

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:25:6: Load64 redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:28:26

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:31:6: LoadAcq redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:34:27

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:36:6: Xadd redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:39:37

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:39:6: Xadd64 redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:42:39

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:42:6: Xadduintptr redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:45:47

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:45:6: Xchg redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:48:36

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:48:6: Xchg64 redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:51:38

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:51:6: Xchguintptr redeclared in this block

    previous declaration at /usr/local/go/src/runtime/internal/atomic/atomic_amd64.go:54:45

/usr/local/go/src/runtime/internal/atomic/atomic_amd64x.go:51:6: too many errors

原因:

由于安装新版本的时候,没有删除旧版本,导致安装包的有些关联发生错误

解决方案:

先手动删除之前安装的包,再重新按照

1

2

rm -rf /usr/local/go

sudo tar -C /usr/local -xzf go1.14.1.darwin-amd64.tar.gz

更多相关知识请关注go语言教程栏目

以上就是go语言中一种常见的错误的详细内容,更多文章请关注木庄网络博客!!

相关阅读 >>

什么是Go语言Go语言的优缺点介绍

Go语言中run与build命令的区别是什么?

Go语言有goto吗

Go语言有没有优势?

Go语言和python的区别是什么?

Go语言string转int的方法

详解用Go语言实现查找两个数组的异同

Go语言指向指针的指针

Go语言defer的用法是什么

Go语言进行数组比较的方法是什么

更多相关阅读请进入《Go语言》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...