zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    java+phantomjs实现动态网页抓取
    windows 安装 cordova
    windows系统安装 ionic
    windows系统 安装 mysql.fx
    安装 Navicat for MySQL
    windows 安装 MySQL
    调用百度地图api隐藏版权信息
    ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked.
    Angular 调用百度地图API接口
    Angular 使用 frame 加载网络资源显示路径不安全问题
  • 原文地址:https://www.cnblogs.com/lavin/p/glide-install-go-mode-error.html
Copyright © 2011-2022 走看看