Yarn: 添加远程tarball软件包时出错

创建于 2017-04-15  ·  4评论  ·  资料来源: yarnpkg/yarn

您是否要请求功能或报告错误
报告错误

目前的行为是什么?

添加远程tarball程序包时,发生错误:

错误发生意外错误:“ https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz:EISDIR :对目录进行非法操作,打开'/ home / luiz / .cac
他/yarn/v1/.tmp/9417ab587e459fe380a7e913f4160254/'“。

如果当前行为是错误,请提供重现步骤。

在一个空文件夹中:

yarn init //创建一个虚拟项目
yarn add https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz

手动更新package.json中的依赖项,例如

dependencies: {
 "cherrytree": "https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz"
}

并执行yarn install错误

预期的行为是什么?
来自链接https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz的软件包
应该安装并添加到依赖项

请提及您的node.js,yarn和操作系统版本。
纱0.23.2
节点6.10
Linux Mint 17.3和Windows 10

cat-bug cat-documentation good first issue help wanted triaged

最有用的评论

嘿,当我终于设法找到根本原因时,我为这个错误苦了一段时间,至少在我的情况下:

对于yarn add要使用的.tar.gz ,其文件名必须以./开头。 我检查了您的tarball,列出了所有文件,但没有领先的本地目录ref( tar -tf build.tar.gz )。

可以通过修改在调用tar命令时引用文件的方式(即传递“ ./*”而不是“ *”)来解决此问题。 或者,如果您以编程方式创建它,请更改标题中的文件名。

所有4条评论

yarn-error.log文件:

Arguments: 
  /usr/bin/nodejs /usr/bin/yarn add https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz

PATH: 
  /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

Yarn version: 
  0.23.2

Node version: 
  6.10.2

Platform: 
  linux x64

npm manifest: 
  {
    "name": "testproj",
    "version": "1.0.0",
    "main": "index.js",
    "license": "MIT"
  }

yarn manifest: 
  No manifest

Lockfile: 
  No lockfile

Trace: 
  Error: https://github.com/blikblum/cherrytree/releases/download/svelte-2.4.2/build.tar.gz: EISDIR: illegal operation on a directory, open '/usr/local/share/.cache/yarn/v1/.tmp/9417ab587e459fe380a7e913f4160254/'
      at Error (native)


嘿,当我终于设法找到根本原因时,我为这个错误苦了一段时间,至少在我的情况下:

对于yarn add要使用的.tar.gz ,其文件名必须以./开头。 我检查了您的tarball,列出了所有文件,但没有领先的本地目录ref( tar -tf build.tar.gz )。

可以通过修改在调用tar命令时引用文件的方式(即传递“ ./*”而不是“ *”)来解决此问题。 或者,如果您以编程方式创建它,请更改标题中的文件名。

谢谢。 那行得通。 至少要保留文档中的注释,以便开放

大家好,
我添加了一条警告,该警告将这种行为告知用户并提出了解决方案。
为此创建了PR#4898

这是我对纱线的第一项贡献,因此,如果我错过了一些东西,请告诉我。 谢谢。

此页面是否有帮助?
0 / 5 - 0 等级