dsmvovm27249 2019-05-24 09:59
浏览 47
已采纳

如何知道从哪里获取软件包

When I import a package in a go application (using modules and vscode with golang plugin):

import (
   cors "goa.design/plugins/cors/dsl"
)

go automatically retrieves the package. How does go know where to get it from? I figured it simply pulls the sources from github.com, but the repository for this project is at https://github.com/goadesign/goa no . in the name. And if I change the import to:

import (
   cors "goa.design/plugins/v3/cors/dsl"
)

It retrieves the v3 package. I would gladly RTFM, but not sure which FM I need to read.

Btw: this is my second day on go so this is magic to me.

  • 写回答

1条回答 默认 最新

  • douhui2307 2019-05-24 10:08
    关注

    It's simple, check it out:

    $> curl https://goa.design/plugins/cors/dsl
    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-us">
    <head>
      <meta http-equiv="content-type" content="text/html; charset=utf-8">
    
    
      <meta name="go-import" content="goa.design/plugins git https://github.com/goadesign/plugins">
      <meta name="go-source" content="goa.design/plugins _ https://github.com/goadesign/plugins/tree/master/{/dir} https://github.com/goadesign/plugins/blob/master{/dir}/{file}#L{line}">
    

    The key here is in the tag named "go-import". When go get requests https://goa.design/..., it hits that HTML file and knows that "goa.design/...." must be retrieved using git from https://github.com/goadesign/plugins.

    Here is a good article

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型