zoukankan      html  css  js  c++  java
  • Golang 解决 Iris 被墙的依赖包

    使用 Golang 的 Iris web 框架时,用 go get github.com/kataras/iris 命令久久无法下载,最后还报一堆错误。

    使用  GOPROXY 可解决问题,也可参考如下地址:https://goproxy.io

    我使用的是 Win10系统,所以下面的演示以Windows 系统为例。

    我的 GOPATH 目录是在 D:GOPATH 目录(此目录包含 src、pkg、bin目录,这三个目录要手动创建)。

    项目在 GOPROJECT 目录中,如下图

    1.打开CMD命令提示框,设置临时环境变量

    set GO111MODULE=on

    set GOPROXY=https://goproxy.io

    注意 https://goproxy.io 也可替换成阿里云的 https://mirrors.aliyun.com/goproxy

    2.再次执行 go get github.com/kataras/iris 也可以加 -v -u ,如下

     go get -v -u github.com/kataras/iris

     这时候就把所有的依赖都下载下来了。

    值得注意的是,这些包并没有下载到 GOPATH/src 目录下,而是在 GOPATH/pkg/mod 目录中

     3.在 GOPROJECT 目录下创建一个 MyTest 目录,我称这个目录是 MyTest 项目

     4.在 MyTest  目录中创建 main.go 文件,内容如下:

    package main
    
    import (
    	"github.com/kataras/iris"
    
    	"github.com/kataras/iris/middleware/logger"
    	"github.com/kataras/iris/middleware/recover"
    )
    
    func main() {
    	app := iris.New()
    	app.Logger().SetLevel("debug")
    	app.Use(recover.New())
    	app.Use(logger.New())
    	app.Get("/", func (ctx iris.Context){
    		ctx.HTML("Hello")
    	})
    
    
    	app.Run(iris.Addr(":8080"), iris.WithoutServerError(iris.ErrServerClosed))
    }
    

     5.用CMD命令框进入到 D:GOPROJECTMyTest 目录中

     6.执行 go run main.go 

    此时打开浏览器输入 localhost:8080 就可以访问了。

    值得一提的是:当再次打开一个新的CMD框或下次开机执行  go run main.go 前,一定要先执行

    set GO111MODULE=on

    set GOPROXY=https://goproxy.io

    如果闲麻烦,可直接在环境变量中设定。

    下一篇将讲解 包管理Go module的使用。

    提示:当你想把写好的代码发给同事看时,你不可能让你同事再次下载依赖包,而是你将依赖包打包到项目的  vendor 目录下一块发给你的同事。

  • 相关阅读:
    Windows设置VMware开机自动启动,虚拟机也启动
    PHP中unset,array_splice删除数组中元素的区别
    Linux 出现 E325:ATTENTION swap
    Linux中的info指令
    java创建线程的三种方式——附源码说明
    JVM类加载过程
    java实现责任链模式的小demo
    讲讲java中线程池的实现
    将原型模式和建造者模式结合起来耍一耍
    一个简单的单例模式Demo
  • 原文地址:https://www.cnblogs.com/ser0632/p/11374790.html
Copyright © 2011-2022 走看看