go开发 modules 的使用和代理

初学go语言,一堆 来自谷歌的包如

import (

"code.google.com/xxx" 

)

不翻墙是很难下载下来的。

另外还有麻烦的 gopath 需要去管理。

但是自从go 1.1.1 开始,新增了 modules 工具,可以让我们像开发 node 的时候,使用 npm 一样的方便。

一、设置代理 

linux设置如下:

export GOPROXY=http://xxxx

  

windows设置:

在环境变量里面,新增一栏名称为:

GOPROXY:http://xxxx

 

其中,http://xxxx为代理的地址

常见的代理地址列表:

阿里: https://mirrors.aliyun.com/goproxy/

官方: https://goproxy.io/

中国:https://goproxy.cn

其他:https://gocenter.io

golang 下载:

https://gomirrors.org/

https://golang.google.cn/dl/

  

二、配置后查看


配置完成,输入 go env 可以查看配置,注意windows需要重新打开 CMD。linux 需要更新配置

三、使用

在空文件夹下面,或者已经存在的项目下面。(可以不需要 build、bin、src 等文件)

执行初始:

go mod init  xxxx      //xxx为模块导入路径

  

再执行下面命令,会自动寻找依赖,加入

go mod tidy

  

四、go  modules常用命令

go mod init:创建一个新模块,初始化 go.mod 文件,参数为该模块的导入路径,推荐使用这种形式。如:go mod init github.com/linehk/example。
go get:更改依赖项版本(或添加新的依赖项)。
go build、go test 等命令:Go 命令行工具会根据需要添加新的依赖项。如:go test ./...,测试当前模块。
go list -m all:打印当前模块依赖。
go mod tidy:移除无用依赖。
go list -m -versions github.com/gin-gonic/gin:列出该模块的所有版本。
go mod verify:验证哈希。

 

五、在 beego框架中使用 modules

首先安装 beego
 go get -u github.com/astaxie/beego
go get -u github.com/beego/bee

想要快速建立一个应用来检测安装?

linux

$ cd $GOPATH/src
$ bee new hello
$ cd hello
$ bee run

  

windows

>cd %GOPATH%/src
>bee new hello
>cd hello
>bee run

  

如果错误,可能是需要配置环境变量,windows下面,安装完成,在 gopath -> bin下面有一个bee.exe文件,需要配置到 path的环境变量里面

此时在 GOPATH 的文件夹 src目录下面,可以看见bee创建的项目

可以将整个项目拷贝出来,脱离 gopth使用。只需要在目录执行:

go mod init hello
go mod tidy

  

 

go开发 modules 的使用和代理的更多相关文章

  1. 浅谈iOS开发的协议(protocol)和代理(delegate)

    协议和代理对于一个新手来说确实不讨好理解,也有很多的iOS开发的老手对此是懂非懂的.网上的很多博文只是讲了怎么使用,并没有说的很明白.下面我谈一下我的理解. 1.你要先搞明白,协议和代理为什么会出现, ...

  2. Mybatis学习(2)原始dao开发和使用mapper接口代理开发

    基础知识: 1).SqlSessionFactoryBuilder: 通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory.将SqlSessionFact ...

  3. mybatis开发Dao的Mapper动态代理方式

    1. 开发规范Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体跟Dao原始方法中接口实现类的方法相 ...

  4. java开发必学知识:动态代理

    目录 1. 引言 2. 代理模式及静态代理 2.1 代理模式说明 2.2 静态代理 2.3 静态代理局限性 3. 动态代理 3.1 JAVA反射机制 3.2 JDK动态代理 3.2.1 JDK动态代理 ...

  5. 02.MyBatis在DAO层开发使用的Mapper动态代理方式

    在实际开发中,Mybatis作用于DAO层,那么Service层该如何调用Mybatis Mybatis鼓励使用Mapper动态代理的方式 Mapper接口开发方法只需要程序员编写Mapper接口(相 ...

  6. 开发设计模式(四) 代理模式(Proxy Pattern)

    转自http://blog.sina.com.cn/s/blog_89d90b7c0101803g.html 代理模式:代理模式的主要作用是为其他对象提供一种代理以控制对这个对象的访问.在某些情况下, ...

  7. iOS开发之OC与swift开发混编教程,代理的相互调用,block的实现。OC调用Swift中的代理, OC调用Swift中的Block 闭包

    本文章将从两个方向分别介绍 OC 与 swift 混编 1. 第一个方向从 swift工程 中引入 oc类 1. 1 如何在swift的类中使用oc类    1.2  如何在swift中实现oc的代理 ...

  8. 微信小程序开发工具 POST net::ERR_PROXY_CONNECTION_FAILED 代理问题

    几天不动代码,再运行成这样了, {errMsg: "getLocation:fail Error: tunneling socket could not…d, cause=connect E ...

  9. 爬虫开发13.UA池和代理池在scrapy中的应用

      今日概要 scrapy下载中间件 UA池 代理池 今日详情 一.下载中间件 下载中间件(Downloader Middlewares) 位于scrapy引擎和下载器之间的一层组件. - 作用: ( ...

随机推荐

  1. [转]MATLAB 2018b 中文版下载与安装教程

    MATLAB R2018b_win64.iso 压缩包一个 MATLAB R2018b Win64 Crack 压缩包一个 一.下载与安装   1 下载中文原程序安装包和破解文件,链接: https: ...

  2. 【maven】在pom.xml中引入对json-lib的依赖dependency

    <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</art ...

  3. 关于Android8.0 静态注册广播 行为变更的说明。

    Andorid 8.0 对广播的使用做了变更. 当广播接收器使用静态注册方式使用时,除了一些例外,这个接收器接收不到隐式广播. 注意这个“隐式”是重点. 看了网上几篇文章,对这个变更理解有误.错误的理 ...

  4. https://suchprogramming.com/epoll-in-3-easy-steps/

    https://suchprogramming.com/epoll-in-3-easy-steps/ https://www.quora.com/What-are-the-key-difference ...

  5. 我大概知道他在说什么了,是对内存单元的竞争访问吧。Python有GIL,在执行伪码时是原子的。但是伪码之间不保证原子性。 UDP丢包,你是不是做了盲发?没有拥塞控制的情况下,确实会出现丢包严重的情况。你先看看发送速率,还有是否带有拥塞控制。

    我大概知道他在说什么了,是对内存单元的竞争访问吧.Python有GIL,在执行伪码时是原子的.但是伪码之间不保证原子性.   UDP丢包,你是不是做了盲发?没有拥塞控制的情况下,确实会出现丢包严重的情 ...

  6. 000 centos7下安装elasticsearch7的单节点安装

    在这里,直接使用最新的包进行学习.这里的安装也以前的版本不同,不过因为学习,这部分安装的区别不具体研究了. 这里也是摸索型的记录,所以会出现报错情况,然后针对这种方式进行解决,最后达到安装完成的效果. ...

  7. SpringMvc使用JavaMail发送邮件,并使用465端口开启ssl加密传输,保证邮件安全

    代码在本地发邮件没任何问题.但部署到服务器,发送邮件显示连接异常.一开始非常懵逼,之后telnet smtp.163.com 25不通,发现是云服务器出于安全考虑,关闭了服务器的25端口,而25端口是 ...

  8. Vue非父子组件传值

    <template> <div id="app"> <v-home></v-home> <br> <hr> ...

  9. java中 try catch的妙用

    程序开发中,格式转换的时候,经常由于字符串可能是其他的不可预知的符号导致,字符串转数值失败, 这个时候可以妙用try catch来解决,如下图所示.其实,很多其他不可预知的异常情况,也可以用它来处理. ...

  10. 使用.whl文件安装torch和pytorch的方法

    当使用pip install torch torchvision命令下载感觉很慢时 可以先到下面的网页将.whl文件下载下来,然后再运行安装即可: torchvision也是 下载好了以后,运行: p ...