Как запустить файл hello.js в Node.js в Windows?

313

Я пытаюсь запустить программу hello world, написанную на javascript, в отдельном файле с именем hello.js

В настоящее время работает версия windows node.js.

Код прекрасно работает в окне консоли, но как мне ссылаться на путь в среде Windows .

C:\abc\zyx\hello.js

в Unix я думаю, что это показывает $ node hello.js

Я абсолютно новичок в Node.js Пожалуйста, поправьте меня, если я делаю что-то не так.

Я попытался

> node C:\abc\zyx\hello.js ---- не работал

> C:\abc\zyx\hello.js - не работал

Update1:

Добавил node.exe в папку, где находится файл hello.js.
Добавлена ​​точка пути к папке c: \ abc \ zyx \, и я получаю сообщение об ошибке, которое говорит

ReferenceError: привет не определен

см. содержимое hello.js

setTimeout(function() {
console.log('World!');
}, 2000);
console.log('Hello');

ОБНОВЛЕНИЕ 2:

До сих пор я попробовал все эти версии, и ни одна из них, кажется, не работает . Может быть, я делаю что-то совершенно не так.

>node hello.js
>$ node hello.js
>node.exe hello.js
>node /hello.js
>node \hello.js
> \node \hello.js
> /node /hello.js
> C:\abc\xyz\node.exe C:\abc\xyz\hello.js
> C:\abc\xyz\node.exe C:/abc/xyz/hello.js
> hello.js
> /hello.js
> \hello.js
>node hello

Обратитесь к моей файловой структуре

.
├── hello.js
├── node.exe
└── paths.txt

РЕШЕНО: Вместо запуска node.exe, попробуйте запустить в командной строке следующую опцию, и это сработало.

c:\>node c:\abc\hello.js
Hello
World! (after 2 secs)
Mitul
источник
1
Не могли бы вы предоставить немного больше информации? Насколько я знаю, официального узла для Windows нет, поскольку объявление о запуске порта было сделано всего несколько недель назад . Используете ли вы node.js под Cygwin, или есть какие-то другие окна узлов (если есть, я не слышал об этом). РЕДАКТИРОВАТЬ: я не понял, что была доступна предварительная сборка. Мои извинения.
Даг Стивен
6
Попробуй node hello.jsвместо node hello;)
Райнос
1
я не знаю, что такое c:>, но из командной строки, как вы сказали, «узел c: \ users \ me \ desktop \ helloworld.js» - это то, что мне помогло.
user1873073
2
У меня были те же проблемы, что и у вас, это забавно, потому что даже сегодня, 2016, я нашел десятки учебных пособий, пытающихся научить nodejs, но ни один из них не научил пошагово, как запустить основную команду, кроме $ node filename.js. Я не могу понять, как все предполагают, что нам нужно использовать корневую папку для этого. Кто использует корень диска для размещения файлов?
Диего Мендес

Ответы:

364

Вот точные шаги, которые я только что предпринял, чтобы запустить пример «Hello World», который можно найти по адресу http://nodejs.org/ . Это быстрый и грязный пример. Для постоянной установки вы хотели бы сохранить исполняемый файл в более разумном месте, чем корневой каталог, и обновить PATHего, указав его местоположение.

  1. Загрузите исполняемый файл Windows здесь: http://nodejs.org/#download
  2. Скопируйте файл в C: \
  3. Создать C: \ hello.js
  4. Вставьте следующее содержание:
    var http = require('http');
    http.createServer(function (req, res) {
      res.writeHead(200, {'Content-Type': 'text/plain'});
      res.end('Hello World\n');
    }).listen(1337, "127.0.0.1");
    console.log('Server running at http://127.0.0.1:1337/');
  1. Сохранить файл
  2. Пуск -> Выполнить ... -> cmd
  3. с:
  4. C:> узел hello.js

    Server running at http://127.0.0.1:1337/

Вот и все. Это было сделано на Windows XP.

Wayne
источник
10
Работает как Очарование !!! Большое спасибо. Хитрость заключается в том, чтобы открыть cmd вместо командной строки node.exe.
Mitul
1
@Mitul - Да, это та деталь, которая отсутствовала в вашем описании - то есть, как вы запускали узел - которая мешала другим помогать вам. Начальный узел без аргументов переводит вас в REPL. Это среда для интерактивного выполнения JavaScript. Это не то место, где можно начать выполнение файла. Подробнее здесь: nodejs.org/docs/v0.3.1/api/repl.html
Уэйн,
9
Это ужасно, НЕ копируйте исполняемый файл узла в корень вашего жесткого диска. Для этого и предназначены пути, смотрите ответ @ kcbanner. Кроме того, установка Node в Windows поставляется с командной строкой Node.js, в которой уже правильно заданы пути, если вы не хотите изменять системный путь.
Джошперри
2
@joshperry - я думаю, ты немного упускаешь суть. Вопрос был сильно отредактирован по сравнению с оригиналом, но основная проблема, с которой столкнулся OP, заключается в том, что они пытались выполнить файл из REPL. Ничто в моем ответе не предназначено для долгосрочного решения по установке, и даже не подразумевается. Инструкции настолько просты, чтобы проиллюстрировать разницу между выполнением .jsфайла и открытием REPL.
Уэйн
28

Вы должны убедиться, что nodeэто в вашем PATH. Чтобы настроить свой путь, это из .

Убедитесь, что каталог, который node.exeесть в вашем PATH. Тогда ты сможешь бежать node path_to_js_file.js.

Для хорошего примера "Hello World", проверьте: http://howtonode.org/hello-node

kcbanner
источник
Я добавил node.exe в папку, где находится файл hello.js. Также добавлена ​​точка пути к папке c: \ abc \ zyx \, и я получаю сообщение об ошибке
Mitul
В чем ошибка? Трудно оказать какую-либо помощь, не зная, что является настоящей ошибкой.
kcbanner
1
Извините, я забыл упомянуть ранее. Пожалуйста, обратитесь к моему обновлению в вопросе. Спасибо за помощь.
Mitul
О, я вижу. Это выглядит как проблема внутри вашего файла hello.js. Пожалуйста,
опубликуйте
1
Я обновил свой ответ хорошим примером "Hello World" для узла.
kcbanner
8

еще один простой способ

  1. скачать nodejs в вашу систему
  2. открыть блокнот написать команду js "console.log ('Hello World');"
  3. сохранить файл как hello.js желательно в том же месте, что и nodejs
  4. откройте командную строку и перейдите к месту, где находится nodejs
    c:\program files\nodejs
  5. и запустить команду из местоположения, как c:\program files\nodejs>node hello.js
  6. в случае, если файл JS в другом месте, укажите путь к файлу c:\program files\nodejs>node path\hello.js
РАВИ КИРАН
источник
5

Я установил узел для Windows. При поиске node.js в меню «Пуск» Windows 7 появляется командная строка node.js. Если вы запустите эту специальную командную строку, вы можете разместить что угодно в любом месте, не задавая путь, или скопировать node.exe повсюду.

Грант
источник
3

WinXp: я создал .batфайл

node c:\path\to\file\my_program.js

Это просто запустить my_program.batиз проводника или в окне cmd

Анатолий С
источник
3

Перейдите в cmd и введите: узел "C: \ Path \ To \ File \ Sample.js"

HUHO
источник
3

Windows/CMDне знает, где находится файл узла. Вы можете вручную ввести:

path=%path%;"c:\Program Files\nodejs"

каждый раз, когда вы открываете новый запрос cmd.exe

ИЛИ (в Windows 10),

  1. щелкните правой кнопкой мыши This PC-> properties.
  2. Нажмите на Advanced system settings-> Environment Variables(внизу справа).
  3. Выберите Pathи нажмите Edit.
  4. Нажмите новый и введите C:\Program Files\nodejs.
  5. Перезагрузитесь, и вы сможете запустить узел из любого каталога.
Qasde
источник
1

введите node jsкомандную строку на стартовом экране. и использовать это. ИЛИ набор PATHузлов в переменной окружения.

Бхавик патель
источник
0

Для всех застрял на том, как начать!

https://github.com/sethvincent/javascripting

Скопируйте сюда, если ссылка умирает:

  1. Откройте командную строку node.js
  2. Чтобы создать каталог с именем javascripting, введите «mkdir javascripting»
  3. Перейдите в папку javascripting, набрав «cd javascripting»
  4. Создайте файл с именем ввод.js, введя «touch ввод.js» ИЛИ ДЛЯ WINDOWS: «NUL> ввод.js»
  5. Откройте файл и введите какой-нибудь javascript, например "Console.log ('hello');"
  6. Сохраните файл и проверьте, работает ли он, набрав «javascripting verify ввод.js»
Фред Джонсон
источник
0

Все, что вам нужно сделать, это щелкнуть правой кнопкой мыши файл .js в Windows и нажать «Открыть с помощью командной строки» ИЛИ Открыть cmd, скопировать путь к папке, содержащей ваш сценарий, и запустить команду «cd [вставить текст здесь]». Затем выполните "node example.js"

Сэмюэл Уильямс
источник
0

Проблема заключалась в том, что вы открыли реплей Node.js, когда все автоматически предположили, что вы находитесь в командной строке. Для чего это стоит, вы можете запустить файл javascript из repl с помощью .loadкоманды. Например:

.load c:/users/username/documents/script.js

Эту же команду можно также использовать в командной строке, если вы сначала запустили узел внутри командной строки, введя nodeбез аргументов (при условии, что узел находится в PATH).

Я нахожу удивительным, что 1) все .loadдумали, что вы были в командной строке, а не в repl, 2) кажется, что никто не знает об этом , и 3) это имеет 273 возражения, доказывая, что многие другие новички node.js также запутались.

Мэтью
источник
0

У меня была такая проблема для windows. И я решил это так: startApp.cmd:

@set JAVA_HOME=C:\jdk160_24
@set PATH=%JAVA_HOME%/bin;%PATH%
@cd /D C:\app\

@start /b C:\WINDOWS\system32\cscript.exe 
C:\app\start.js

и сохранил его cmd-файл в директории C: \ scripts, следующий файл - runApp.bat:

C:\scripts\startApp.cmd
Евгений Рябышев
источник
0

Просто измените файловую ассоциацию .jsфайла на, node.exeи вы сможете работать прямо из проводника.

1) Right click on the file -> Select "Open with" -> Select "Choose another program"
2) Check box "Always use this app to open .js file"
3) Click "More apps" -> "Look for another app in PC"
4) Navigate to node.js installation directory.(Default C:\Program Files\nodejs\node.exe"
5) Click "Open" and you can just see cmd flashing

Примечание: добавление приведенного ниже кода в конец файла js будет полезно, так как оно будет держать консоль открытой для нажатия клавиш.

console.log('Press any key to exit');

process.stdin.setRawMode(true);
process.stdin.resume();
process.stdin.on('data', process.exit.bind(process, 0));
Харикришнан
источник
0

Шаг для Windows

  1. нажмите ctrl + r. затем введите cmd и нажмите ввод.
  2. Теперь командная строка будет открыта.

  3. после типа cd filepath файла. ex (cd C: \ Users \ user \ Desktop \), затем нажмите Enter.

  4. пожалуйста, проверьте, установлен ли npm или не использует этот командный узел -v. тогда, если вы установили, вы получите версию узла.
  5. введите команду в командной строке, как этот узел filename.js. пример (узел app.js)

C:\Users\user\Desktop>node app.js
vijayabalan
источник
-1
c:\> node.exe %CD%\hello.js

% CD% захватывает текущий каталог под DOS

visitsb
источник
если вы хотите использовать текущий каталог, не нужно указывать абсолютный путь. c:\> node.exe hello.jsтоже будет работать.
Анкит Балян