• glide install error


    glide install 提示:

    Error scanning github.com/cpuguy83/go-md2man/v2/md2man: cannot find package "." in:
            /Users/xxxx/.glide/cache/src/https-github.com-cpuguy83-go-md2man/v2/md2man

    进入go-md2man后发现并没有v2的packge,进入main 函数查看导入的路径:

    "github.com/cpuguy83/go-md2man/v2/md2man"

    打开go.mod内容如下

    module github.com/cpuguy83/go-md2man/v2
    
    go 1.12
    
    require (
        github.com/pmezard/go-difflib v1.0.0 // indirect
        github.com/russross/blackfriday/v2 v2.0.1
        github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect
    )

    module中似乎定义了虚拟的路径在做版本区分; 

    go mod在go 1.11 和go 1.12 才开始支持,因此尝试升级go 到1.13 似乎不能凑效; 

     修改glide.yaml 指定repo 和version 发现版本并不匹配上这个路径,对比其他项目发现细微的差别在一些package 版本上,有的包用的是^1.xxx  大于等于某个版本;在xiaorongtao 的提示下使用 glide

     tree 导出项目中的包查看到具体的出问题的包和导入的 testify 有关

    - package: github.com/stretchr/testify
      version: ^1.2.2
      subpackages:
      - assert
      - mock

    这里引用的是大于等于1.2.2 ,因此glide install 时候会拉新的版本引发问题; 

    这里如果某个版本稳定的话建议使用固定版本;似乎所有的项目都会有版本依赖问题,因此,使用开源项目要小心小心再小心版本的变化;

    去掉大于等于符号后重新glide install 顺利版本依赖安装成功; 

    由于之前升级了go 导致项目build 出错,降低go 到go 1.10 ; 

    总结:当出现多依赖找不到问题时候需要看最新的变动;同时要用查看依赖关系.(吐槽下导出的tree 有接近50m )

    glide tree

    耗时 0.5day

  • 相关阅读:
    LeetCode 078. 子集 dfs
    LeetCode 404. 左叶子之和 树遍历
    LeetCode 226. 翻转二叉树 递归
    C# String.Format大全 去 decimal 后面的 0
    HTML readyState 属性 iframe onreadystatechange事件
    crm 4 IFRAME 元素隐藏
    在MS CRM 4.0中引用JS文件
    crm 4 隐藏自定义 toolbar
    crm 4 UserHasRole
    微信JSSDK上传多张图片
  • 原文地址:https://www.cnblogs.com/lavin/p/glide-install-go-mode-error.html
Copyright © 2020-2023  润新知