Я развернул приложение Node.js на экземпляре Amazon EC2, используя их дистрибутив Linux. Это простое консольное приложение, работающее через pm2, со следующей структурой:
package.json
start.js
index.js
config.js
.babelrc
src/
Он работает на узле 10.14.1. start.js — точка входа приложения. Эта структура заархивирована, SCP отправлена в экземпляр EC2, распакована, затем я запускаю npm install и npm start.
При запуске на экземпляре EC2 в журналах появляется следующая ошибка:
SyntaxError: /home/ec2-user/Application/src/file.js: Support for the experimental syntax 'classProperties' isn't currently enabled (48:26):
46 | }
47 |
> 48 | requestToStopUpdates = () => {
| ^
Этот метод является первым в своем классе.
Вавилонские части моего package.json выглядят так:
"@babel/core": "7.2.0",
"@babel/plugin-proposal-class-properties": "7.2.3",
"@babel/plugin-proposal-object-rest-spread": "7.2.0",
"@babel/polyfill": "7.0.0",
"@babel/preset-env": "7.2.0",
"@babel/register": "7.0.0",
"babel-core": "7.0.0-bridge.0",
"babel-eslint": "10.0.1",
Приложение отлично работает при работе в Windows. Я извлек файлы в другое место на своем ПК и запустил их без проблем, и даже создал новый экземпляр Windows Server на EC2 и запустил приложение там без проблем.
Я ясно вижу закрывающую фигурную скобку перед этой функцией, что она закрывает?
запуск npm: "start": "cross-env NODE_ENV=production ENV=development node start.js",. А закрывающая фигурная скобка просто закрывает конструктор над методом.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Что делает ваш
npm start? Я не вижу ничего, что могло бы запуститься через Babel.