#vue.js #vue-cli
#vue.js #vue-cli
Вопрос:
Я разрабатываю приложение в Vue.js 2. Я использую Ubuntu 20.04.1 LTS. Мой package.json
файл выглядит так:
{
"name": "my-app",
"version": "0.0.1",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"vue": "^2.6.12",
"vue-router": "^3.4.9",
"vuex": "^3.6.2",
"vuex-persistedstate": "^4.0.0-beta.3",
...and others
},
"devDependencies": {
...some dependencies
}
}
Когда я запускаю npm run build
, я получаю следующее исключение:
> vue-cli-service build
⠹ Building for production...internal/child_process.js:403
throw errnoException(err, 'spawn');
^
Error: spawn E2BIG
at ChildProcess.spawn (internal/child_process.js:403:11)
at Object.spawn (child_process.js:553:9)
at new PoolWorker (/workspace/___/___/___/node_modules/thread-loader/dist/WorkerPool.js:46:43)
at WorkerPool.createWorker (/workspace/___/___/___/node_modules/thread-loader/dist/WorkerPool.js:341:23)
at WorkerPool.distributeJob (/workspace/___/___/___/node_modules/thread-loader/dist/WorkerPool.js:335:28)
at runQueue (/workspace/___/___/___/node_modules/neo-async/async.js:8099:9)
at processTicksAndRejections (internal/process/task_queues.js:75:11) {
errno: -7,
code: 'E2BIG',
syscall: 'spawn'
}
npm ERR! code 1
npm ERR! path /workspace/___/___/___
npm ERR! command failed
npm ERR! command sh -c vue-cli-service build
npm ERR! A complete log of this run can be found in:
npm ERR! /home/___/.npm/_logs/2021-03-08T18_57_06_018Z-debug.log
Однако, когда я запускаю npm run serve
, все работает нормально. Что здесь не так? Если вам нужны какие-либо дополнительные файлы, которые я не включил, пожалуйста, дайте мне знать.
Комментарии:
1. Есть ли у вас какие-либо ошибки ESLint во всем вашем проекте?
2.
npm run serve
не возвращает никаких предупреждений или ошибок, все работает нормально. Я также попытался удалить все зависимости, связанные с ESLintpackage.json
, и снова переустановить все зависимости, но проблема по-прежнему сохраняется.
Ответ №1:
Я выяснил, в чем была ошибка. Я пытался прочитать некоторое содержимое файла vue.config.js
примерно так:
const fs = require('fs-extra');
const path = require('path');
// read data
const data = fs.readJsonSync(path.resolve(__dirname, 'data.json'), {
throws: false
});
// set process variables
process.env.VUE_APP_DATA = JSON.stringify(data);
module.exports = {
devServer: {
disableHostCheck: true,
},
};
После удаления fs.readJsonSync(...)
он начал работать.