• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    go install/build生成的文件命名和路径操作

    1. 写在前面

    本文主要讨论go install/build命令生成的文件命令和生成路径问题。将从两种情况讨论:

    文件夹下只有一个“命令源码文件”

    文件夹下既有命令源码文件还有其他源码文件

    以下实验主要在windows环境下完成呢,所以生成的可执行文件以.exe后缀结尾

    2. 文件夹下只有一个“命令源码文件”

    假设一个简单的命令源码文件所在的工程组织如下所示:

    |__ src
        |__ jeekTimeProject
            |__ test
                |__demo1.go

    其中demo1.go的ackage name是 main

    //demo1.go
    package main
    import (
    "flag"
    )
    var name string
    func init() {
     flag.StringVar( name, "name", "everyone", "The greeting object.")
    }
    func main() {
     flag.Parse()
     fmt.Printf("Hello, %s!\n", name)
    }
    

    1、go build demo1.go:

    在$GOPATH/src/jeekTimeProject/test目录下生成可执行文件 demo1.exe(以源码文件的名字命名新文件)

    2、go build:

    在$GOPATH/src/jeekTimeProject/test目录下生成可执行文件 test.exe(以上层文件夹的名字命名新文件)

    3、go build jeekTimeProject/test:

    在$GOPATH/src/jeekTimeProject/test目录下生成可执行文件 test.exe(以上层文件夹的名字命名新文件)

    4、go install demo1.go:

    报错,截图如下所示:

    5、go install:

    在$GOPATH/bin目录下生成可执行文件 test.exe (以上层文件夹的名字命名新文件)

    6、设置完$GOBIN环境变量后,运行go install demo1.go:

    在$GOBIN目录下生成可执行文件demo1.exe

    7、设置完$GOBIN环境变量后,运行go install:

    在$GOBIN目录下生成可执行文件test.exe

    3. 文件夹下既有命令源码文件还有其他源码文件

    假设一个简单的命令源码文件所在的工程组织如下所示:

    |__ src
        |__ jeekTimeProject
            |__ test
                |__demo1.go
                |__demo1_lib.go

    其中demo1.go和demo1_lib.go的package name是 main

    // demo1.go
    package main
    import (
    "flag"
    )
    var name string
    func init() {
     flag.StringVar( name, "name", "everyone", "The greeting object.")
    }
    func main() {
     flag.Parse()
     hello(name)
    }
    
    //demo1_lib.go
    package main
    import "fmt"
    func hello(name string) {
     fmt.Printf("Hello, %s!\n", name)
    }
    

    1、go build demo1.go:

    报错,截图如下所示:

    2、go build demo1.go demo1_lib.go:

    在$GOPATH/src/jeekTimeProject/test目录下生成可执行文件 demo1.exe(以源码文件的名字命名新文件)

    3、go build:

    在$GOPATH/src/jeekTimeProject/test目录下生成可执行文件 test.exe(以上层文件夹的名字命名新文件)

    4、go build jeekTimeProject/test:

    在$GOPATH/src/jeekTimeProject/test目录下生成可执行文件 test.exe(以上层文件夹的名字命名新文件)

    5、go install demo1.go:

    报错,截图如下所示:

    6、go install demo1.go demo1_lib.go:

    报错,截图如下所示:

    7、go install:

    在$GOPATH/bin目录下生成可执行文件 test.exe (以上层文件夹的名字命名新文件)

    8、设置完$GOBIN环境变量后,运行go install demo1.go:

    报错,截图如下:

    9、设置完$GOBIN环境变量后,运行go install demo1.go demo1_lib.go:

    在$GOBIN目录下生成可执行文件demo1.exe

    10、设置完$GOBIN环境变量后,运行go install:

    在$GOBIN目录下生成可执行文件test.exe(以上层文件夹的名字命名新文件)

    补充:go build后加文件和目录的区别

    go build + xxx.go:生成以xxx命名的可执行文件

    go build + dir / go build . / go build:生成以目录名命名的可执行文件

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • 浅谈go build后加文件和目录的区别
    • go build 通过文件名后缀实现不同平台的条件编译操作
    • go build和go install的区别介绍
    • 解决go build不去vendor下查找包的问题
    上一篇:Goland 生成可执行文件的操作
    下一篇:Go 实现一次性打包各个平台的可执行程序
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    go install/build生成的文件命名和路径操作 install,build,生成,的,文件,