Serverless项目中ESLint报require()加载ES模块错误求助
AWS Serverless项目ESLint部署失败问题求助
环境版本
- node: 16.20.2
- eslint: 9.17.0
- serverless: 3.4.2
- @babel/eslint-parser: 7.25.9
错误信息
Parsing error: require() of ES Module /codebuild/output/src1416354794/src/node_modules/eslint/node_modules/eslint-scope/lib/definition.js from /codebuild/output/src1416354794/src/node_modules/babel-eslint/lib/require-from-eslint.js not supported.
Instead change the require of definition.js in /codebuild/output/src1416354794/src/node_modules/babel-eslint/lib/require-from-eslint.js to a dynamic import() which is available in all CommonJS modules
问题背景与已尝试操作
AWS Serverless项目中使用ESLint做语法校验,之前曾因严格规则导致部署失败,现在ESLint自身引发部署失败。已查阅相关解决方案,尝试更新parser及parserOptions配置,但问题仍未解决,想请教是否存在遗漏的配置点。
配置文件
eslint.config.mjs
import globals from "globals"; import pluginJs from "@eslint/js"; import nodePlugin from "eslint-plugin-node"; /** @type {import('eslint').Linter.Config[]} */ export default [ {languageOptions: { globals: globals.browser, parser: "@babel/eslint-parser", parserOptions: { requireConfigFile: false, babelOptions: ["@babel/preset-env"], ecmaVersion: 2021, sourceType: "module", }, }}, pluginJs.configs.recommended, { plugins: { node: nodePlugin, }, files: ["src/**/*.js"], ignores: ['.webpack/**/*.js', 'node_modules/**/*.js', '.eslintrc.js'], rules: { 'semi': ['error', 'always'], 'no-unused-vars': 'warn', 'no-undef': ['off'], 'eqeqeq': 'error', 'no-console': 'warn', 'no-throw-literal': 'error', 'no-async-promise-executor': 'error', 'no-return-await': 'error', 'no-eval': 'error', 'no-new-func': 'error', 'no-useless-escape': 'warn', 'no-process-env': 'off', 'consistent-return': 'error', 'curly': ['error', 'all'], }, } ];
package.json
{ "devDependencies": { "@aws-sdk/client-lambda": "^3.726.0", "@aws-sdk/client-secrets-manager": "^3.726.0", "@aws-sdk/client-sfn": "^3.726.0", "@babel/core": "^7.26.0", "@babel/eslint-parser": "^7.25.9", "@babel/preset-env": "^7.26.0", "@eslint/js": "^9.17.0", "axios": "^1.7.9", "eslint": "^9.17.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "globals": "^15.14.0", "pg": "^8.13.1", "prettier": "^3.4.2", "serverless": "^3.39.0", "serverless-bundle": "^6.3.1", "serverless-dotenv-plugin": "^6.0.0", "serverless-iam-roles-per-function": "^3.2.0", "serverless-offline": "^13.9.0", "serverless-offline-lambda": "^1.0.6", "serverless-plugin-log-retention": "^2.0.0", "serverless-step-functions": "^3.21.2" } }
内容的提问来源于stack exchange,提问作者Brokili
相关产品推荐
相关产品推荐

