产卵纱pkg ENOENT

时间:2019-11-17 22:56:32

标签: node.js react-native expo yarn

当我运行 expo install expo-permissions

时,会发生这种情况

它明确地返回了我

  

使用Yarn安装1个SDK 35.0.0兼容本机模块。

     

添加expo-permissions@~7.0.0

     

产卵纱pkg要素

     

在您的环境中设置EXPO_DEBUG = true以查看堆栈跟踪。

这很奇怪,因为我通常不使用Yarn。我使用NPM安装依赖项。

我知道此错误与我的文件或某些路径配置不正确有关。我不知道我必须改变的方向和方法。

我可以帮忙吗?

请让我知道是否需要在此处添加其他相关信息。

谢谢

6 个答案:

答案 0 :(得分:15)

我遇到了与您的解决方案相同的问题,并且您通过npm进行了纱的安装:
npm i -g yarn
我认为此错误是由于他无法找到yarnpkg的符号链接引起的。执行此命令时,将更新并链接yarn。

答案 1 :(得分:7)

您可以在命令后传递--npm标志。

expo install [package-name] --npm

答案 2 :(得分:1)

是的,我尝试了很多方法,最后我找到了解决方案。 问题是不同的纱线包版本。 所以首先你需要升级最新的yarn版本。

打开终端并输入以下内容。

  1. npm install --global yarn

  2. 展会更新

希望这能解决您的问题。

答案 3 :(得分:0)

我有类似的问题。您应该在系统中安装yarn,因为这是Expo CLI试图执行的安装包。对我来说,我的问题是我确实有yarn,但是我有一个旧版本。我必须将纱线版本更新为1.19.0。如果安装此版本,它将正常运行。

我建议使用yvm安装和管理不同版本的纱线。安装yvm之后,安装yarnyvm install <version>一样容易,因此在这种情况下,您将执行yvm install 1.19.0。而且,如果由于另一个项目无法使用1.19.0(有时会发生)而不得不更改版本,则只需安装另一个版本并通过执行yvm use <version>在两个版本之间进行更改即可。

希望这会有所帮助!

答案 4 :(得分:0)

这对我有用:

最新纱线的安装(from here

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -

echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt update && sudo apt install yarn

sudo apt update && sudo apt install --no-install-recommends yarn

将此添加到您的个人资料:export PATH="$PATH:/opt/yarn-[version]/bin"(路径可能会有所不同,具体取决于您将Yarn提取到的位置) 在终端中,登录并注销以使更改生效

yarn --version检查版本是否为最新版本(1.0 +)。

然后expo update <version>(例如:36.0.0)

注意事项: 不要忘记检查您是否注意到了类似的警告:“发现 warning package-lock.json。您的项目包含由Yarn以外的工具生成的锁定文件。

答案 5 :(得分:0)

对此的最佳解决方案是使用 expo install pkname --npm, expo update --npm, expo upgrade --npm,

示例:

yarn install

发生这种情况是因为您尚未执行 yarnmyButton.layer.borderColor = UIColor.white.cgColor 命令。