使用 gomonkey Mock 函数及方法时遇到 panic: permission denied 的问题及解决方法

Posted CG国斌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用 gomonkey Mock 函数及方法时遇到 panic: permission denied 的问题及解决方法相关的知识,希望对你有一定的参考价值。

文章目录

问题描述

基于 Golang 语言,使用 gomonkey 来 mock 函数及方法,在 Mac 环境执行的时候,遇到如下错误:

panic: permission denied [recovered]
panic: permission denied

显然,执行单测的时候,遇到了权限问题。

解决方法

按下面顺序依次执行即可。

  • 下载工具
cd `go env GOPATH`
git clone https://github.com/eisenxp/macos-golink-wrapper.git
  • 将 link 重命名为 original_link
mv `go env GOTOOLDIR`/link `go env GOTOOLDIR`/original_link
  • copy 第一步下载的工具到 GOTOOLDIR 目录下
cp `go env GOPATH`/macos-golink-wrapper/link  `go env GOTOOLDIR`/link
  • 授予 link 执行权限
chmod +x `go env GOTOOLDIR`/link

在执行上面的命令的时候,我们有可能遇到两个问题,分别为:

  1. 克隆「git clone https://github.com/eisenxp/macos-golink-wrapper.git」项目超时,无法将项目拉取到本地;
  2. 重命名「mv go env GOTOOLDIR/link go env GOTOOLDIR/original_link」遇到无法授权的问题。

对于第一个问题,我们可以直接去 GitHub 将该项目手动 Download 下来,然后手动复制到「cd go env GOPATH」目录;对于第二个问题,也是手动将遇到的没有权限的目录的权限进行修改。


参考内容

以上是关于使用 gomonkey Mock 函数及方法时遇到 panic: permission denied 的问题及解决方法的主要内容,如果未能解决你的问题,请参考以下文章

使用 gomonkey Mock 函数及方法时遇到 panic: permission denied 的问题及解决方法

使用 gomonkey Mock 函数及方法

使用 gomonkey Mock 函数及方法

使用 gomonkey Mock 函数及方法

使用 gomonkey 遇到非 debug 模式执行失败的问题及解决方法

使用 gomonkey 遇到非 debug 模式执行失败的问题及解决方法