【问题标题】:NPM cross-env not installed未安装 NPM 跨环境
【发布时间】:2018-04-02 13:13:04
【问题描述】:

我有以下 package.json

{
  "private": true,
  "scripts": {
    "dev": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --watch-poll --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "installreact": "npm install react react-dom --save",
    "installbabel": "npm install babel-core babel-loader babel-preset-es2015 babel-preset-react --save-dev",
    "installwebpack": "npm install webpack webpack-dev-server --save-dev",
    "build": "webpack -d && webpack-dev-server --content-base src/ --inline --hot --port 1234"
  },
  "devDependencies": {
    "axios": "^0.16.2",
    "babel-core": "^6.26.0",
    "babel-loader": "^7.1.4",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-react": "^6.24.1",
    "bootstrap-sass": "^3.3.7",
    "cross-env": "^5.1.4",
    "jquery": "^3.1.1",
    "laravel-mix": "^1.0",
    "lodash": "^4.17.4",
    "vue": "^2.1.10",
    "webpack": "^3.11.0",
    "webpack-cli": "^2.0.12",
    "webpack-dev-server": "^2.11.1"
  },
  "dependencies": {
    "material-ui": "^1.0.0-beta.38",
    "material-ui-icons": "^1.0.0-beta.36",
    "react": "^16.2.0",
    "react-dom": "^16.2.0",
    "react-redux": "^5.0.7",
    "react-router": "^4.2.0",
    "react-router-redux": "^4.0.8",
    "redux": "^3.7.2"
  }
}

当我运行 npm install 时,cross-env 目录没有在node_modules 中创建并且没有错误。唯一消息:1.337 秒后更新。

我尝试再次卸载并安装该软件包,但没有任何变化。

【问题讨论】:

  • 全局安装。 npm install -g cross-env
  • 您可以通过运行npm nstall cross-env@5.1.4 命令尝试一次。然后检查指定的目录。如果可用,则删除 package.json 文件中软件包版本前面的 ^,然后尝试 npm install

标签: npm npm-install


【解决方案1】:

像我上面说的那样全局安装它或使用路径运行它。但是,在运行 npm 脚本时,npm 应该在路径中的 bin 文件夹中设置所有内容。

"dev": "./node_modules/.bin/cross-env ..."

如果跨环境可执行文件不在 bin 文件夹中。确保三件事:

  • 您的 package.json 中有 cross-env 作为依赖项
  • node_modules 文件夹中删除文件夹 cross-envcross-spawn
  • 确保您没有将 bin-links 选项设置为 false 的 .npmrc 文件。
  • 再次运行 npm install

应该在 node_modules 文件夹中的 .bin 文件夹中创建可执行文件

【讨论】:

  • 当我运行“npm run dev”时仍然找不到跨环境的路径
  • 你在 ./node_modules/.bin/cross-env 中有没有东西。你应该有 cross-env.cmd
  • 它只包含了loose-envify和loose-envify.cmd
【解决方案2】:

我的问题解决了

1:你的 package.json 中有 cross-env 作为依赖项

2:从node_modules文件夹中删除cross-env和cross-spawn文件夹。

3:确保您没有将 bin-links 选项设置为的 .npmrc 文件 错误的。 (运行 npm config ls -l 将显示所有隐式设置 npm,包括它认为放置 .npmrc 的正确位置。 但是,如果您从未登录过(使用 npm login),它将为空。 只需登录即可创建。)

4:Run npm install 再次。

【讨论】:

  • 删除 devDependencies 中对 cross-env 的引用并重新安装对我有用。
【解决方案3】:

首先,运行:

rm -rf node_modules
rm package-lock.json yarn.lock
npm cache clear --force

然后运行命令

npm install cross-env
npm install 

然后你就可以运行了

【讨论】:

    猜你喜欢
    • 2018-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-14
    • 2023-03-24
    相关资源
    最近更新 更多