用户登录
用户注册

分享至

GOPATH

  • 作者: Mr点BUG
  • 来源: 51数据库
  • 2021-10-12

目录

  • gopath
  • 代码目录结构规划

gopath

工作目录就是我们用来存放开发的源代码的地方,对应的就是go里的gopath这个环境变量。这个环境变量指定之后,我们编译源代码等生成的文件都会放到这个目录下,gopath环境变量的配置参考,配置到/etc/profile或者windows下的系统变量里。

前面我们在安装go的时候看到需要设置gopath变量,go从1.1版本到1.7必须设置这个变量,而且不能和go的安装目录一样,这个目录用来存放go源码,也就是go的工作空间(workspace,gopath环境变量指向的目录),go的可运行文件,以及相应的编译之后的包文件。所以这个目录下面有三个子目录:src、bin、pkg。从go 1.8开始,gopath环境变量现在有一个默认值,如果它没有被设置。 它在unix上默认为$home/go,在windows上默认为%userprofile%/go。

这里对go工作空间包含的三个目录作一个说明

  • src :里面的每个子目录都是一个包。包内是go的源码文件
  • pkg :编译后生成的,包的目标文件
  • bin :编译后生成的可执行文件

gopath允许多个目录,当有多个目录时,请注意分隔符,多个目录的时候windows是分号,linux系统是冒号,当有多个gopath时,默认会将go get的内容放在第一个目录下。

代码目录结构规划

gopath下的src目录就是接下来开发程序的主要目录,所有的源码都是放在这个目录下面,那么一般我们的做法就是一个目录一个项目。

project1 // (project1添加到gopath目录了)
  -- bin
  -- pkg
  -- src  
     -- models       // package
     -- controllers  // package
     -- main.go      // package main[注意,本文所有main.go均指包main的入口函数main所在文件]
project2 // (project2添加到gopath目录了)
   -- bin
   -- pkg
   -- src
      -- models       // package
      -- controllers  // package
      -- main.go      // package main

使用go build可以在src文件夹下编译生成名为“src”的可执行文件。这是golang默认约定。一般我个人不怎么用这个命令。因为它会生成可执行文件在src目录下面。

我一般用:go get 和 go install。

软件
前端设计
程序设计
Java相关