Node.js Linux之谜:运行节点模块(Gatsby)如何导致.streampath错误?

Node.js Linux之谜:运行节点模块(Gatsby)如何导致.streampath错误?,node.js,linux,gatsby,Node.js,Linux,Gatsby,这是一个奇怪的问题。我正在将一个现有站点转换为Gatsby(我使用npm I-g Gatsby cli安装的节点包),当我运行Gatsby develop时,我收到一个错误: 错误:enoint:没有这样的文件或目录,stat'/home/me/.streampath' 这里的幕后故事是,出于愚蠢的原因,Linux Steam故意安装了一个名为.steampath的错误符号链接。但我不明白的是,为什么/如何运行特定节点应用程序(Gatsby)会导致此错误,而这与我的项目或Gatsby无关。。。当

这是一个奇怪的问题。我正在将一个现有站点转换为Gatsby(我使用
npm I-g Gatsby cli安装的节点包),当我运行
Gatsby develop
时,我收到一个错误:

错误:enoint:没有这样的文件或目录,stat'/home/me/.streampath'

这里的幕后故事是,出于愚蠢的原因,Linux Steam故意安装了一个名为
.steampath
的错误符号链接。但我不明白的是,为什么/如何运行特定节点应用程序(Gatsby)会导致此错误,而这与我的项目或Gatsby无关。。。当运行其他节点应用程序时,不会

我已经通过我的项目目录执行了
grep
steam
不会出现在任何文件中。类似地,我对我的环境进行了grep(
env | grep steam
),没有指向该文件的环境变量

所以,有人能回答:为什么运行盖茨比会在我的主文件夹中的项目外的一个完全不相关的符号链接中导致错误

我想象盖茨比一定在运行某种系统命令,但我甚至无法想象它会运行什么来扫描我的主目录并抱怨符号链接中断

另外,这个错误在最后出现,在其他错误之后,所以它看起来不像是导致了
gatsby develope
失败,而是在最后报告了错误

p.p.S.删除坏的符号链接确实可以解决问题(尽管我不知道Steam会怎么想)。。。但是,我得到了另一个错误,关于我的主文件夹中的另一个损坏的符号链接(我不能责怪蒸汽)。所以Node/Gatsby正在做的事情导致我的home dir被扫描,并对发现的任何损坏的符号链接进行投诉


一旦所有损坏的符号链接被移除,盖茨比就可以正常工作。真奇怪

你的问题的答案可以

我今天也有这个问题,当我的一个JS导入 未安装(redux)。添加依赖项修复了这个问题。当 依赖项在node_modules目录中缺失 没有挖掘足够远)将统计我的整个主目录。和 存在依赖项~目录被单独保留

这与节点解析算法有关,虽然没有给出更多信息,但我相信可能是这样


最初看到此错误时,我也很担心。

取决于您的软件包和依赖项。您能否进一步澄清:什么依赖项会使Node(或NPM软件包)扫描我的主目录以查找错误的符号链接?是否有steam模块?我的意思是——不知道你在用什么,甚至都不可能猜到。可以是任何东西,直接依赖或传递依赖。即使在我删除Steam符号链接后,它仍然存在其他损坏符号链接的问题。我只是不明白这怎么会是个问题。