• go的目录规范


    这里举一个简单的例子:如果我们在建立一个goProject目录,通常在这个目录下我们会创建如下目录

    src 存放不同的项目代码

    bin 存放编译后的可执行程序

    vender 存放引用的第三方库

    pgk 存放静态库

    go get

    go get会做两件事:

    1. 从远程下载需要用到的包

    2. 执行go install

    go install

    go install 会生成可执行文件直接放到bin目录下,当然这是有前提的 你编译的是可执行文件,如果是一个普通的包,会被编译生成到pkg目录下该文件是.a结尾

    goProject     // go_project为GOPATH目录
      -- bin
         -- myApp1  // 编译生成
         -- myApp2  // 编译生成
         -- myApp3  // 编译生成
      -- pkg
      -- src
         -- myApp1     // project1
            -- models
            -- controllers
            -- others
            -- main.go 
         -- myApp2     // project2
            -- models
            -- controllers
            -- others
            -- main.go 
         -- myApp3     // project3
            -- models
            -- controllers
            -- others
            -- main.go

    go的编译

    如果我们写好了go的代码文件,我们如果测试运行可以通过:
    go run 快速执行go文件
    go build 编译程序,生成二进制文件
    go install 安装可执行文件到bin目录下

    基本命令:
    go test执行单元测试或压力测试
    go env 显示go相关的环境变量
    go fmt 格式化源代码

    例子一

    我在D:project/go_project/src/go_dev/day01/hello目录下写了一个hello程序
    现在把这个hello程序进行编译

    我们在go_project目录下执行的编译命令,如果不指定编译生成的文件会直接将编译文件生成在当前目录即go_project目录下
    这里需要解释的是go build 后面的路径go build go_dev/day01/hello 
    我们从目录结构可以看出,go_dev的上一级目录src目录并没有写,这是因为go编译的时候,会自动去GOPATH下的src目录里去找,所以这里是不需要写,同时编译的路径的最后我们只写到hello目录而不是hello.go文件

  • 相关阅读:
    cf------(round)#1 C. Ancient Berland Circus(几何)
    cf------(round)#1 B. Spreadsheets(模拟)
    grep 精确匹配
    解决 service iptables save 报错 please try to use systemctl
    kubernetes 亲和性调度详解
    免费好用的SSH手机客户端
    axios和drf结合的增删改查
    CDH 部署 Hadoop:5.开始安装
    OpenNebula概述
    Python 3.x 引入了函数注释
  • 原文地址:https://www.cnblogs.com/zzy-9318/p/10375971.html
Copyright © 2020-2023  润新知