zoukankan      html  css  js  c++  java
  • [golang] Glide 包管理工具,在windows10 64位系统上的bug修复方案

    bug重现
    [ERROR] Unable to export dependencies to vendor directory: Error moving files: exit status 1. output: Access is denied. 0 dir(s) moved

    解决方案

    第一步

    //找到这个文件 github.com/Masterminds/glide/path/winbug.go
    
    
    // CustomRename is similar to os.Rename but deals with the bug outlined
    // at https://github.com/golang/go/issues/20841.
    func CustomRename(o, n string) error {
    
    	// Handking windows cases first
    	if runtime.GOOS == "windows" {
    		msg.Debug("Detected Windows. Moving files using windows command")
    		cmd := exec.Command("cmd.exe", "/c", "move", o, n) //将这行代码修改为 cmd := exec.Command("cmd.exe", "/c", "xcopy /s/y", o, n+"\")
    		output, err := cmd.CombinedOutput()
    		if err != nil {
    			return fmt.Errorf("Error moving files: %s. output: %s", err, output)
    		}
    
    		return nil
    	} else if detectWsl() {
    		cmd := exec.Command("mv", o, n)
    		output, err2 := cmd.CombinedOutput()
    		msg.Debug("Detected Windows Subsystem for Linux. Removing files using subsystem command")
    		if err2 != nil {
    			return fmt.Errorf("Error moving files: %s. output: %s", err2, output)
    		}
    
    		return nil
    	}
    
    	return os.Rename(o, n)
    }
    

    第二步,重新编译glide.go文件

    go build glide.go
    

    第三步,将编译生成的可执行文件glide.exe,复制到gopath下的bin目录(这个目录是加了系统环境变量的,所以将其放入该目录)

    第四步,更详细的讨论解决方案 https://github.com/Masterminds/glide/issues/873

  • 相关阅读:
    洛谷P2444 病毒【AC自动机】
    AC自动机
    洛谷试炼场2-5---字符串处理【字符串】
    洛谷试炼场1-5---简单字符串【字符串】
    poj2185 Milking Grid【KMP】
    poj3630 Phone List【Trie树】
    CH1809匹配统计【KMP】
    打包命令
    django_auth模块
    mongodb-Configuration
  • 原文地址:https://www.cnblogs.com/yxhblogs/p/8157211.html
Copyright © 2011-2022 走看看