栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Iris 环境搭建(最新版Go&IDEA&IrisV12)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Iris 环境搭建(最新版Go&IDEA&IrisV12)

文章目录
  • 本地环境
    • Go配置目录
      • 创建示例
        • SCR下创建
        • 在其他目录下
  • 安装IrIs
    • 临时配置
    • 永久配置
    • 开始项目
    • 开始编写 main.go
    • 第一个Iris案例
  • 总结

本地环境

windows 10

Go Version 1.7.3

IDEA 2020.2

Go配置目录

本地目录(GOROOT) :D:Go

项目目录(GOPATH):D:GoProjects

GOSDK:D:Gobin

目录说明,由于从Go 1.2x版本以后就支持mod后,我们的项目不再必须要在 GoPATH 的 SCR目录下了。而是通过go mod 来声明是我们的Go项目,之后生成对应的 执行文件和所需要的依赖都在 GOPATH 的 bin 和 pkg 这两个包下面

创建示例 SCR下创建

直接在SCR下面创建一个包即可

也就是直接创建一个文件夹作为项目目录

在其他目录下

最直观的在IDEA创建的时候你就能够看到,在其他目录下创建多了一个Module选项,这个其实就是创建一个独立的项目。

创建过程如下。

之后在你的项目目录下会看见一个 go.mod 文件

module Test0

go 1.17

默认初始如下。

此外,如果你是自己手动创建则进入如下步骤(但是这个显然在工程开发当中有点蛋疼)

go mod init yourprojectname  //生成 mod文件

之后

go build //在当前目录生成可执行文件  or
go install //在你的项目GoPATH下的bin里面生成

为什么要说这个,原因很简单踩了一些坑,不得不说一下,之后就是我们的依赖。

我们一般通过 go get 下载第三方包。

首先我们知道 Go一般在 GOROOT/scr 下 和 GOPATH 下面找第三方依赖。现在我们下载的第三方包一般都在

GOPATHpkgmod

例如我这边:

安装IrIs

由于特殊原因我们无法直接从Github上面下载懂得都懂。

所以我们要配置下载镜像

临时配置

和python一样有临时和永久的。

临时的只需要这样。

Windows

set GO111MODULE="on"
set GOPROXY=https://goproxy.cn

之后执行下载命令

go get gopkg.in/russross/blackfriday.v2

Linux

类似

export GO111MODULE="on"
export GOPROXY=https://goproxy.cn
永久配置

那就是直接写进环境变量里面

懂得都懂,这边再windows演示方便

然后下载

开始项目

按照前面的过程进行配置项目

这里我们需要使用到 IDEA 来帮助我们

由于我们不在scr下,我们通过 go.mod是可以完成我们相关环境的依赖的,但是通过idea可以帮助我们免去mod文件的麻烦。

开始编写 main.go

我们直接导入包

此时 IDEA 会自动寻找依赖

帮我们导入过来,如果你是在scr目录下(GOPATH)那么不用担心这个。只是我不习惯这样来做。

此时 自动搞定修改 对应的 mod文件

并且依赖已导入

第一个Iris案例

这个是直接拿官方案例

package main

import "github.com/kataras/iris/v12"

func main() {
    app := iris.Default()
    app.Use(myMiddleware)

    app.Handle("GET", "/ping", func(ctx iris.Context) {
        ctx.JSON(iris.Map{"message": "pong"})
    })

    // Listens and serves incoming http requests
    // on http://localhost:8080.
    app.Run(iris.Addr(":8080"))
}

func myMiddleware(ctx iris.Context) {
    ctx.Application().Logger().Infof("Runs before %s", ctx.Path())
    ctx.Next()
}

此时

go run main.go

运行

总结

其实本来是很简单的东西,结果由于GO与Java或者python在工程上的细小差异(我没仔细注意)以及 特殊原因和 当前 的Go的相关资料有点老旧(很多都是一两年前的资料,也不太详细,还有很多抄袭的水军,尤其是CSDN)出了不少差错。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/458937.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号