【问题标题】:Error: Rule can only have one resource source (provided resource and test + include + exclude)错误:规则只能有一个资源源(提供资源和测试+包含+排除)
【发布时间】:2021-01-30 01:05:12
【问题描述】:

你好我有以下错误,我在vuejs中有一个应用程序,它运行正常,错误突然出现,重新安装所有东西,清理缓存,我找不到解决方法,希望你的帮助

错误:规则中只能有一个资源源(提供的资源和测试+包含+排除)

  "exclude": [
    null
  ],
  "use": [
    {
      "loader": "/Users/juanpablo/front-treatments/node_modules/cache-loader/dist/cjs.js",
      "options": {
        "cacheDirectory": "/Users/juanpablo/front-treatments/node_modules/.cache/babel-loader",
        "cacheIdentifier": "81fef5a6"
      },
      "ident": "clonedRuleSet-38[0].rules[0].use[0]"
    },
    {
      "loader": "/Users/juanpablo/front-treatments/node_modules/babel-loader/lib/index.js",
      "options": "undefined",
      "ident": "undefined"
    }
  ]
} ````
A complete log of this run can be found in:
0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli   '/Users/juanpablo/.nvm/versions/node/v12.19.0/bin/node',
1 verbose cli   '/Users/juanpablo/.nvm/versions/node/v12.19.0/bin/npm',
1 verbose cli   'run',
1 verbose cli   'serve'
1 verbose cli ]
2 info using npm@6.14.8
3 info using node@v12.19.0
4 verbose run-script [ 'preserve', 'serve', 'postserve' ]
5 info lifecycle vue-dashboard@0.1.0~preserve: vue-dashboard@0.1.0
6 info lifecycle vue-dashboard@0.1.0~serve: vue-dashboard@0.1.0
7 verbose lifecycle vue-dashboard@0.1.0~serve: unsafe-perm in lifecycle true
8 verbose lifecycle vue-dashboard@0.1.0~serve: PATH: /Users/juanpablo/.nvm/versions/node/v12.19.0/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/juanpablo/front-treatments/node_modules/.bin:/Users/juanpablo/.nvm/versions/node/v12.19.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/juanpablo/.rvm/bin
9 verbose lifecycle vue-dashboard@0.1.0~serve: CWD: /Users/juanpablo/front-treatments
10 silly lifecycle vue-dashboard@0.1.0~serve: Args: [ '-c', 'vue-cli-service serve' ]
11 silly lifecycle vue-dashboard@0.1.0~serve: Returned: code: 1  signal: null
12 info lifecycle vue-dashboard@0.1.0~serve: Failed to exec serve script
13 verbose stack Error: vue-dashboard@0.1.0 serve: `vue-cli-service serve`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/Users/juanpablo/.nvm/versions/node/v12.19.0/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:314:20)
13 verbose stack     at ChildProcess.<anonymous> (/Users/juanpablo/.nvm/versions/node/v12.19.0/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:314:20)
13 verbose stack     at maybeClose (internal/child_process.js:1021:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
14 verbose pkgid vue-dashboard@0.1.0
15 verbose cwd /Users/juanpablo/front-treatments
16 verbose Darwin 19.6.0
17 verbose argv "/Users/juanpablo/.nvm/versions/node/v12.19.0/bin/node" "/Users/juanpablo/.nvm/versions/node/v12.19.0/bin/npm" "run" "serve"
18 verbose node v12.19.0
19 verbose npm  v6.14.8
20 error code ELIFECYCLE
21 error errno 1
22 error vue-dashboard@0.1.0 serve: `vue-cli-service serve`
22 error Exit status 1
23 error Failed at the vue-dashboard@0.1.0 serve script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

【问题讨论】:

  • 你好胡安!你有没有解决这个问题?我在最新版本的 vue cli 中遇到了同样的情况
  • 我对“修复”要回到过去感到难过。我更喜欢解决这个问题的方法。

标签: javascript vue.js webpack node-modules


【解决方案1】:

对我来说,我是使用 npm 安装的,所以我所做的是:

  1. 删除package-lock.json
  2. 删除node_modules
  3. 运行yarn install
  4. yarn serve,瞧!

【讨论】:

    【解决方案2】:

    安装vue-loader 为我解决了这个问题。

    【讨论】:

      【解决方案3】:

      删除 webpack 并安装以前的版本对我有用!

      npm uninstall webpack
      npm install webpack@^4.0.0 --save-dev
      

      【讨论】:

      • 我遇到了同样的问题,这样做解决了问题
      • 对我很有用。第三季度
      • 谢谢!将 webpack 从 5.11.11 恢复到 4.42.0 对我有用。知道为什么吗?
      • 在运行 gridsome 构建的 netlify 构建过程中出现此错误。使用 node v12.18.0 (npm v6.14.4) 将 webpack 从 v5 降级到 v4 对我有用。
      • 请注意在我的vue-cli 生成的项目中,我还必须将vue-loader 降级为^14 并将css-loader 降级为^4 以解决构建过程中的兼容性问题。
      【解决方案4】:

      我们遇到了这个问题,降级 webpack 不想工作,因为 css-loader 需要 webpack 5。

      不指定版本css-loader 将更新到不支持 webpack 3/4 的版本 5。

      解决方案原来是硬编码css-loader 到版本3.6.0

      {
        ...
        "dependencies": {
          "core-js": "3.15.2",
          "vue": "^3.2.20",
          "vue-router": "^4.0.11",
          "vuex": "^4.0.2",
          "vuex-persist": "^3.1.3"
        },
        "devDependencies": {
          "@vue/cli-plugin-babel": "~4.5.14",
          "@vue/cli-plugin-router": "~4.5.14",
          "@vue/cli-plugin-vuex": "~4.5.14",
          "@vue/cli-service": "~4.5.14",
          "@vue/compiler-sfc": "^3.0.0",
          "sass": "^1.26.5",
          "sass-loader": "^8.0.2",
          "vue-loader": "^15.9.7",
          "vue-template-compiler": "^2.6.14"
        },
        "peerDependencies": {
          "css-loader": "3.6.0"
        }
      }
      

      这里的重要部分是peerDependencies 部分。在此之后确保删除package-lock.jsonnode_modules,然后重新运行npm i

      【讨论】:

        【解决方案5】:

        降级是基本的,但后来我不得不降级 sass-loader。 TypeError: this.getOptions is not a function

        【讨论】:

          【解决方案6】:

          我降级到 "webpack": "^4.45.0" 并且成功了。

          【讨论】:

            【解决方案7】:

            可能与最新的 Node(版本 15)和 npm(版本 7)有关。

            我的用例略有不同,但我在 Dockerfile 中遇到了同样的问题。 必须从 node:alpine 更改为 node:lts-alpine

            本地一切都与使用节点 14.15.0 和 npm 6.14.8 的 Node LTS 一起工作,但 Dockerfile 使用的是最新版本。

            【讨论】:

            • 我自己在 Windows 上也得出了这个结论,从 Node 版本 15 降级到 Node 版本 14 LTS 就可以了:)
            【解决方案8】:

            我的问题是 package.json 中有 "webpack": 'latest',这会产生冲突,我所做的是回到 webpack 的 4.44.0 版本,我的问题得到了解决

            【讨论】:

              【解决方案9】:

              我今天遇到了这个错误,我的解决方案是恢复我的 package-lock.json 中的更改。

              然后是 npm prune 删除无用的软件包,npm update 是最新的。

              【讨论】:

              • 这应该是公认的答案。所有其他人都通过还原解决了它。这个解决了 webpack 5 本身的问题
              猜你喜欢
              • 1970-01-01
              • 2021-02-13
              • 2021-02-27
              • 2022-10-05
              • 1970-01-01
              • 2022-08-04
              • 1970-01-01
              • 2021-10-07
              • 1970-01-01
              相关资源
              最近更新 更多