首页 > 解决方案 > nodejs通过anaconda安装导致linux上的跨机兼容性问题

问题描述

这个问题可能很难重现描述,但希望这可行。我正在使用两台不同的机器(笔记本电脑和台式机),并在两者上都遵循以下步骤。

我正在创建一个这样的 conda 环境:

conda create --name webdev --no-default-packages

然后我现在只安装nodejs,如下所示:

conda install -c conda-forge nodejs

生成的环境中只有三件事:

# Name                    Version                   Build  Channel
libgcc-ng                 7.2.0                hdf63c60_3    conda-forge
libstdcxx-ng              7.2.0                hdf63c60_3    conda-forge
nodejs                    10.8.0               hfc679d8_1    conda-forge

只是为了说明,然后我可以创建一个新的 react 项目,如下所示:

create-react-app my-app
cd my-app
npm start

Web 服务器启动得很好,一切都按预期运行。然后我遇到的问题是,如果我使用笔记本电脑导航到我在桌面上创建的项目文件夹并尝试npm start(反之亦然),我会收到以下错误:

internal/modules/cjs/loader.js:583
    throw err;
    ^

Error: Cannot find module '../scripts/start'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:581:15)
    at Function.resolve (internal/modules/cjs/helpers.js:30:19)
    at Object.<anonymous> (/home/me/my-app/node_modules/.bin/react-scripts:35:25)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
    at startup (internal/bootstrap/node.js:266:19)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! my-app@0.1.0 start: `react-scripts start`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the my-app@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/me/.npm/_logs/2018-11-21T01_24_45_031Z-debug.log

奇怪的是,我可以导出我在桌面上创建的 conda 环境,用它在我的笔记本电脑上创建一个新环境,当我尝试运行我在桌面上创建的项目时仍然会出现错误(反之亦然)。

标签: node.js

解决方案


推荐阅读