GO工具链简易入门-go list

本文介绍了Go语言中的`go list`命令,用于获取包或模块的相关信息。通过 `-f` 选项配合模板函数,可以定制输出内容,如查找编译文件、查看依赖以及模块版本信息。`go list`提供了丰富的功能,是Go开发中的实用工具。
摘要由CSDN通过智能技术生成

快速上手

我们可以通过go list xx来使用go list.该指令会返回xx package的规范名字

% cd $GOPATH/src/code.google.com/p/go.crypto/ssh
% go list
code.google.com/p/go.crypto/ssh
% go list github.com/juju/juju
github.com/juju/juju

但是go list的要点在于-f选项.该选项允许我们按照指定格式输出我们关心的内容.

事实上,使用go list xx等价于go list -f '{ { .ImportPath }}' xx

一些常用指令

go list的具体用法如下

go list [-f format] [-json] [-m] [list flags] [build flags] [packages]

其中-f中包含了大量的可配置选项,具体可以看这里, 我们在这里会简单的列举一些常用的功能

查找编译会涉及到的所有文件

通常用于条件编译中检查有哪些文件会被分别编译

  • 使用方法

    go list -f '{ { .GoFiles }}' xx

  • 实例

    % env GOOS=darwin go list -f '{
        { .GoFiles }}' github.com/pkg/term
    [term.go term_bsd.go]
    % env GOOS=linux go list -f '{
        { .GoFiles }}' github.com/pkg/term
    [term.go term_linux.go]
    
查找直接依赖以及所有依赖(包括间接)
  • 使用方法

    • 检查所有直接依赖

      go list -f '{ { .Imports }}' xxx

    • 检查所有直接和间接依赖

      go list -f

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值