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. Jenkins入门【转】

    一.Jenkins概述 二.安装Jenkins https://pkg.jenkins.io/redhat-stable/ sudo wget -O /etc/yum.repos.d/jenkins. ...

  2. chrome下载提示网络错误

    问题背景:项目开发测试阶段出现该问题. 复现:开发调试过程中一直没有问题,本地下载excel.Word.pdf 都完美,但是在服务部署到服务器之后,测试环境的chrome就总是下载失败,提示网络错误. ...

  3. Leetcode: Stream of Characters

    Implement the StreamChecker class as follows: StreamChecker(words): Constructor, init the data struc ...

  4. 实战二:LoadRunner创建一个测试脚本

    问题一:执行脚本浏览器不能自动启动??? 原因:loadrunner11只支持IE9以下浏览器和火狐低版本浏览器 解决办法:1.IE浏览器取消勾选[启用第三方浏览器扩展]启动IE,从[工具]进入[In ...

  5. Python3基础 函数 多值参数 元组与字典形式(键值对分别指出)

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  6. osg塔吊模拟-20191026

    在osg中模拟塔吊群作业

  7. vs2010 出错:error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏(转)

    “LNK1123:转换到 COFF期间失败:文件无效或损坏”的解决方法 一.错误描述 之前写的程序隔段时间使用VS2010再次运行时出现如下错误: LINK fatal error LNK1123转换 ...

  8. 【计算机视觉】OpenCV篇(4) - Pycharm+PyQt5+Python小项目实战

    1.下载安装 (1)Pycharm:下载链接 (2)推荐使用Qt Designer来设计界面,如果你装的是Anaconda的话,就已经自带了designer.exe,我这里使用的是Pycharm的虚拟 ...

  9. 基于libuv的TCP设计(三)

      基于libuv的TCP设计(一) 基于libuv的TCP设计(二)   一.第二版本的libuv_tcp已经基本可以使用.不会出错与崩溃现象,支持几百路客户端同时连接.可是有一缺陷就占用CPU非常 ...

  10. popup demo

    Django下实现: urls.py: from django.conf.urls import url from django.contrib import admin from app01 imp ...