I am running an UBUNTU 14 , trying to start a Javascript not for my game webapp but it returns This error:
:/var/www/html/bot# pm2 start site.js /usr/lib/node_modules/pm2/bin/pm2:940 .action(() => { ^ SyntaxError: Unexpected token ) at exports.runInThisContext (vm.js:73:16) at Module._compile (module.js:443:25) at Object.Module._extensions…js (module.js:478:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Function.Module.runMain (module.js:501:10) at startup (node.js:129:16) at node.js:814:3
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Accepted Answer
That looks like the type of problem that comes up when your program is expecting a newer version of node or the javascript language than what your project is currently using.
The action(() => { syntax is an arrow function, a newer syntax to javascript introduced in ECMAScript 6/2015 spec. It has been supported in Node.js since version 6+
Potential Solution 1: See if you have an old version of node. Run node -v in the command line, confirm that you have a version greater than 6, if you have an old version follow these instructions to install nvm so you can just run a newer version of node for this bot project.
Potential Solution 2: Make sure there is a file here: /var/www/html/bot/.babelrc that contains:
{
"presets": [ "es2015" ]
}
You can check for the file by running ls -a and looking for it.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.