Вход

Просмотр полной версии : Не запускается файл.


arcmag
19.07.2015, 07:58
Всем привет, в общении с node js я новичок вот сейчас пытаюсь потихоньку начать осваивать но пока что как то не очень все идет...

Скачал с сайта https://nodejs.org/
Установил, создал файл ntjs.js с кодом
console.log('TEST');
запустил файл node.exe
пытаюсь запустить файл с кодом вот так
node ntjs.js
выводится ошибка
https://dropmefiles.com/L8zNi

(если картинка не видна то вот текст ошибки)

> node ntjs.js
SyntaxError: Unexpected identifier
at Object.exports.createScript (vm.js:44:10)
at REPLServer.defaultEval (repl.js:117:23)
at bound (domain.js:254:14)
at REPLServer.runBound [as eval] (domain.js:267:12)
at REPLServer.<anonymous> (repl.js:279:12)
at REPLServer.emit (events.js:107:17)
at REPLServer.Interface._onLine (readline.js:214:10)
at REPLServer.Interface._line (readline.js:553:8)
at REPLServer.Interface._ttyWrite (readline.js:830:14)
at ReadStream.onkeypress (readline.js:109:10)
>

похожую проблему нашел в теме
http://javascript.ru/forum/node-js-io-js/54421-ne-zapuskaetsya-v-terminale-fail-node-js.html
но так как ответа там никто так и не дал что с этим делать поднимаю новую тему...

Safort
19.07.2015, 11:22
Что-то часто у вас такая ошибка стала появляться. Полазив по сети, я, кажется, нашел ответ. Как я уже говорил в прошлой такой же теме, это - синтаксическая ошибка. Но она возникает не из-за того, что в файле какие-то проблемы, а из-за того, что вы все не правильно запускаете код. Когда в командной строке вводится node, то запускается интерактивная оболочка(REPL), ожидающая, что пользователь будет вводить код на JS, а не ещё раз пытаться запустить REPL из самой же REPL (привет Иксзибиту).

В твоём конкретном случае, чтобы запустить код, нужно открыть командную строку, перейти с помощью команды cd в папку с твоим исполняемым файлом(например, в папку с файлом ntjs.js) и набрать команду node ntjs.js

Это настолько простая ошибка, что никто просто так и не сообразил в чём проблема)

arcmag
19.07.2015, 13:51
Что-то часто у вас такая ошибка стала появляться. Полазив по сети, я, кажется, нашел ответ. Как я уже говорил в прошлой такой же теме, это - синтаксическая ошибка. Но она возникает не из-за того, что в файле какие-то проблемы, а из-за того, что вы все не правильно запускаете код. Когда в командной строке вводится node, то запускается интерактивная оболочка(REPL), ожидающая, что пользователь будет вводить код на JS, а не ещё раз пытаться запустить REPL из самой же REPL (привет Иксзибиту).

В твоём конкретном случае, чтобы запустить код, нужно открыть командную строку, перейти с помощью команды cd в папку с твоим исполняемым файлом(например, в папку с файлом ntjs.js) и набрать команду node ntjs.js

Это настолько простая ошибка, что никто просто так и не сообразил в чём проблема)

Спасибо, вроде бы заработало :)

arcmag
19.07.2015, 14:49
Да и что бы не создавать новую тему подскажите еще по 1 проблемке которая возникла...

Вот когда я запускаю файл через командную строку все работает, а когда пытаюсь запусти через файловый менеджер total commander возникает проблема...

если просто написать node то запускается node.exe а если попытаться открыть файл node ntjs.js то на секунду node запускается и сразу же почти мгновенно закрывается!

Вы вроде человек знающий, может сталкивались с такими вещами, как с этим быть, почему так происходит!?

Erolast
19.07.2015, 15:21
если попытаться открыть файл node ntjs.js то на секунду node запускается и сразу же почти мгновенно закрывается!
Окно открывается, код исполняется, после выполнения окно закрывается - всё логично, так все программы работают.

Заблокировать закрытие окна при полном выполнении можно как-то так (тнадо добавить в конец кода, только для винды):

require("child_process").exec("pause");

arcmag
19.07.2015, 16:29
Окно открывается, код исполняется, после выполнения окно закрывается - всё логично, так все программы работают.

Заблокировать закрытие окна при полном выполнении можно как-то так (надо добавить в конец кода):

require("child_process").exec("pause");


Вай спасибо, огроооомное спасибо :)