ฉันกำลังมีปัญหากับแอพสร้างแองกูลาร์เพื่อการผลิต


15

พฤติกรรมปัจจุบันฉันกำลังสร้างโครงการเชิงมุมของฉันบนวงกลมและมันก็ทำให้ความล้มเหลวด้วยข้อความต่อไปนี้: มีข้อยกเว้นที่ไม่สามารถจัดการได้เกิดขึ้น: ไม่สามารถหาโมดูล '@ babel / compat-data / corejs3- จัดส่งข้อเสนอ'

ต้องการสแต็ก:

/home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/preset-env/lib/polyfills/corejs3/usage-plugin.js
/home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/preset-env/lib/index.js
/home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/core/lib/config/files/plugins.js
/home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/core/lib/config/files/index.js
/home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/core/lib/index.js
/home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/src/utils/process-bundle.js
/home/circleci/eleven-app/frontend/node_modules/jest-worker/build/workers/processChild.js

ฉันใช้

{
  "@babel/plugin-proposal-numeric-separator": "^7.8.3",
  "core-js": "3.2.1",
  "tslib": "^1.11.1",
  "@babel/compat-data": "~7.8.0",
  "@babel/runtime-corejs3": "^7.9.2",
  "ts-node": "7.0.0",
  "tslint": "5.11.0",
  "typescript": "3.5.3",
}
resolutions: {
  "@babel/preset-env": "^7.8.7"
}

นี่คือ npx nls เหตุใดเอาท์พุท @ babel / preset-env:

eleven-app-frontend > @angular-devkit/build-angular > @babel/preset-env@7.8.7
eleven-app-frontend > @nrwl/angular > @nrwl/cypress > @cypress/webpack-preprocessor > @babel/preset-env@7.9.5
eleven-app-frontend > @nrwl/cypress > @cypress/webpack-preprocessor > @babel/preset-env@7.9.5

ขอบคุณสำหรับการอ่าน.

คำตอบ:


6

มีปัญหาเดียวกันวันนี้ดังนั้นฉันจึงคิดว่ามีบางอย่างแปลก ๆ กับรุ่นล่าสุด

package.json ของฉันมีดังต่อไปนี้:

"@babel/compat-data": "~7.9.0"

ฉันลบเครื่องหมาย ~ เพื่อบังคับ 7.9.0 แทนที่จะยอมให้ใหม่กว่านี้และมันก็เป็นการหลอกลวงสำหรับฉัน

อาจเป็นรุ่นที่ใหม่กว่าที่ใช้งานได้ แต่เนื่องจากคุณเปิดปัญหาให้พวกเขา ( https://github.com/babel/babel/issues/11427 ) ฉันจะรอรายละเอียดเพิ่มเติม


1
ฉันกำลังมองปัญหาเดียวกันมันแปลกเพราะห้องสมุดหรือ@babel/runtime-corejs3ไม่ได้รับการตีพิมพ์ในสัปดาห์ที่ผ่านมา
alex88

1
ฉันพยายามแล้ว แต่ก็ยังไม่ได้ผลสำหรับฉัน
Farid Garciayala

1
@FaridGarciayala ในกรณีของฉันฉันมีการประกาศและใช้ 7.9.0 ซึ่งแก้ไขปัญหา
alex88

@FaridGarciayala ควรใช้งานได้ (7.8 / 7.9) แต่ลองลบ "node_modules" ก่อน
Bruno Wolff

ปัญหาเดียวกันวันนี้ ปัญหานี้เกิดขึ้นในการสร้างเซิร์ฟเวอร์เท่านั้นไม่ใช่ในการติดตั้งใหม่ทั้งหมดในระบบ ...
cuniculus

5

ฉันมีปัญหาเดียวกันเมื่อใช้ TravisCI & Vue กับ Jest และ Babel ชุดทดสอบของฉันล้มเหลว การเพิ่ม"@babel/compat-data": "7.9.0"ไปยังdevDependenciesในไฟล์package.jsonของฉันแก้ไขปัญหาของฉันได้


ขอบคุณ. สิ่งนี้ช่วยให้ฉันแก้ไขชุดทดสอบที่ล้มเหลวใน CI
Miroslav Jonas

4

3 ตัวเลือกเหล่านี้เรามาด้วยจนถึงตอนนี้:

  • ปรับการพึ่งพาของ Babel / preset-env เป็น v7.9.0: "@babel/preset-env": "=7.9.0"
  • ในกรณีที่คุณใช้อิมเมจ NodeJS Docker ให้แก้ไขเวอร์ชันด้านล่าง 13.13 เช่น: node:13.12.0-alpine
  • การเพิ่มหรืออัปเกรด"@babel/compat-data": "7.9.0"เป็น devDependencies

การแก้ปัญหาเป็นการชั่วคราวและควรลบออกทันทีที่มีการแก้ไขอิมเมจโหนดจริงหรือไลบรารี babel / preset-env

ปัญหา Github ที่เชื่อมโยง:

babel - https://github.com/babel/babel/issues/11427

nodejs - https://github.com/nodejs/node/issues/32852#issuecomment-613652057


2

ฉันมีปัญหาเดียวกันในวันนี้ใน Github Actions ที่สร้างขึ้นสำหรับโครงการ Vue FE มันสร้างขึ้นในท้องถิ่นที่ดี ฉันจะลองแก้ปัญหาข้างต้นและฉันจะรายงานกลับ ...

อัปเดต:หลังจากดูไฟล์แพคเกจล็อคแล้วโซลูชันของฉันคือการเพิ่ม "@ babel / compat-data" ลงในการอ้างอิงแบบแยง ก่อนหน้านี้มันเป็นเพียงการพึ่งพาสำหรับการพึ่งพา dev บางอย่าง ดังนั้น package.json ของฉันตอนนี้ดูเหมือนว่า:

"dependencies": {
  "@babel/compat-data": "^7.8.6",
  ...

1

ปัญหาเดียวกัน แก้ไขได้โดยทำตามคำแนะนำด้านบน + ลบ node_modules (ดูที่กระทู้ github นี้ ):

  • เพิ่มอย่างชัดเจน@babel/compat-data": "7.9.0"ในการ devDependencies
  • โหนดที่อัปเกรดแล้ว (13.3 ถึง 14.0 ในกรณีของฉัน)
  • มีการลบโฟลเดอร์ node_modules ของฉันและเรียกใช้อีกครั้งyarn(หรือ npm)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.