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. JVM常量的含义与反编译助记符详解

    1.定义一个常量 public class MyTest2 { public static void main(String[] args) { System.out.println(MyParent ...

  2. keepalived vip removed with dhcp renewal【原创】

    最近发现公司云平台服务器的vip有丢失的现象,查看keepalived日志 Jun :: lb1 dhclient: DHCPREQUEST of (xid=0x6deab016) Jun :: lb ...

  3. 给div添加disabled属性

    <div id="CompanyId" name="CompanyId" type="select" ></div> ...

  4. linux系统执行.exe文件

    首先要了解一下Wine: Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,Mac OSX 及 ...

  5. 查看所使用的Linux系统是32位还是64 位的方法

    方法一:getconf LONG_BIT # getconf LONG_BIT 1 1 我的Linux是32位!!! 方法二:arch # arch 1 1 显示 i686 就是32位,显示 x86_ ...

  6. 【Mybatis】MyBatis之整合Spring(八)

    创建环境 系统:macOS Java:1.8 软件:eclipse,maven,mysql 创建步骤 本例:创建一个Maven项目(SpringMVC+Spring+Mybatis),页面上展示员工列 ...

  7. Sound (audio file) player in java - working source code example

    转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/sound-audio-file-player-in-java-working.html ...

  8. Intellij IDEA集成mybatis-generator插件自动生成数据库实体操作类

    Intellij IDEA集成mybatis-generator插件自动生成数据库实体操作类 转载至:https://blog.csdn.net/fishinhouse/article/details ...

  9. kafka如果有多个patition,消费消息的时候消息是没有顺序的

    创建一个2个分区,3个副本的topic,名字叫first kafka-topics.sh  --create --zookeeper datanode1:2181 --partitions 2 --r ...

  10. 【Leetcode_easy】1033. Moving Stones Until Consecutive

    problem 1033. Moving Stones Until Consecutive 参考 1. Leetcode_easy_1033. Moving Stones Until Consecut ...