วิธีเรียกใช้ไฟล์ hello.js ใน Node.js บน windows


313

ฉันพยายามเรียกใช้โปรแกรม Hello World ที่เขียนด้วยจาวาสคริปต์ในไฟล์แยกชื่อ 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 ไม่ได้ถูกกำหนดไว้

ดูเนื้อหาของ 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)

1
คุณช่วยให้ข้อมูลเพิ่มเติมเล็กน้อยได้ไหม? ไม่มีโหนดอย่างเป็นทางการสำหรับ Windows เป็นเท่าที่ผมรู้ว่าเห็นเป็นประกาศว่าพอร์ตก็เริ่มถูกสร้างขึ้นมาเพียงไม่กี่สัปดาห์ที่ผ่านมา คุณใช้ node.js ภายใต้ Cygwin หรือมีบางโหนด windows อื่นแยกออกมี (ถ้ามีฉันไม่เคยได้ยินมัน) แก้ไข: ฉันไม่ได้ตระหนักว่ามีงานสร้างตัวอย่างอยู่ ขอโทษด้วย.
Doug Stephen


6
ลองnode hello.jsแทนnode hello;)
Raynos

1
ฉันไม่รู้ว่า c:> มาจากพรอมต์คำสั่งดังที่คุณกล่าวว่า "โหนด c: \ users \ me \ desktop \ helloworld.js" เป็นสิ่งที่ทำงานสำหรับฉัน
user1873073

2
ฉันมีปัญหาเช่นเดียวกับคุณมันตลกเพราะแม้วันนี้ปี 2016 ฉันพบบทเรียนจำนวนมากที่พยายามสอน nodejs แต่ไม่มีใครสอนทีละขั้นตอนวิธีเรียกใช้คำสั่งพื้นฐานนอกเหนือจาก '$ node filename.js' ฉันไม่เข้าใจว่าทุกคนคิดว่าเราต้องใช้โฟลเดอร์รูทสำหรับเรื่องนี้อย่างไร ใครใช้ดิสก์รูทกับไฟล์โฮสต์
Diego Mendes

คำตอบ:


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. เริ่ม -> Run ... -> cmd
  3. ค:
  4. C:> node hello.js

    Server running at http://127.0.0.1:1337/

แค่นั้นแหละ. สิ่งนี้ทำบน Windows XP


10
ทำงานเหมือนเครื่องราง !!! ขอบคุณมาก. เคล็ดลับคือการเปิด cmd แทนพรอมต์คำสั่ง node.exe
Mitul

1
@Mitul - ถูกต้องนี่คือรายละเอียดที่ขาดหายไปจากคำอธิบายของคุณ - เช่นคุณเป็นผู้เริ่มต้นโหนด - นั่นคือการป้องกันไม่ให้คนอื่นช่วยคุณ โหนดเริ่มต้นที่ไม่มีอาร์กิวเมนต์จะนำคุณเข้าสู่ REPL นี่คือสภาพแวดล้อมสำหรับการเรียกใช้จาวาสคริปต์ ไม่ใช่ที่ที่จะเริ่มต้นการทำงานของไฟล์ เพิ่มเติมได้ที่นี่: nodejs.org/docs/v0.3.1/api/repl.html
Wayne


9
สิ่งนี้น่ากลัวอย่าคัดลอกโหนดที่สามารถใช้งานได้ลงในรูทของฮาร์ดไดรฟ์ของคุณ นี่คือเส้นทางที่มีไว้สำหรับดูคำตอบของ @ kcbanner นอกจากนี้การติดตั้ง Node ของ Window ยังมาพร้อมกับพรอมต์คำสั่ง Node.js ที่มีการตั้งค่าพา ธ อย่างถูกต้องหากคุณไม่ต้องการแก้ไขพา ธ ระบบของคุณ
joshperry

2
@ จอชเพอร์รี - ฉันคิดว่าคุณขาดจุดเล็กน้อย คำถามได้ถูกแก้ไขอย่างหนักจากต้นฉบับ แต่ปัญหาหลักที่ OP พบคือพวกเขาพยายามเรียกใช้ไฟล์จาก REPL ไม่มีอะไรเกี่ยวกับคำตอบของฉันถูกออกแบบมาเพื่อแก้ปัญหาการติดตั้งระยะยาวและไม่ได้หมายความว่า คำแนะนำนั้นง่ายมากอย่างแม่นยำเพื่อแสดงให้เห็นถึงความแตกต่างระหว่างการเรียกใช้.jsไฟล์และการเปิด REPL
Wayne


28

คุณต้องให้แน่ใจว่าอยู่ในของคุณnode PATHในการตั้งค่าเส้นทางของคุณออกนี้

ตรวจสอบให้แน่ใจว่าไดเรกทอรีที่มีอยู่ในของคุณnode.exe แล้วคุณควรจะสามารถทำงานได้PATHnode path_to_js_file.js

สำหรับตัวอย่าง "Hello World" ที่ดีลองดู: http://howtonode.org/hello-node


ฉันเพิ่ม node.exe ไปยังโฟลเดอร์ที่ไฟล์ hello.js นั่งอยู่ นอกจากนี้ยังเพิ่มเส้นทางชี้ไปที่โฟลเดอร์ c: \ abc \ zyx \ และฉันได้รับข้อผิดพลาด
Mitul

ข้อผิดพลาดคืออะไร? เป็นการยากที่จะให้ความช่วยเหลือใด ๆ โดยไม่ทราบว่าข้อผิดพลาดที่แท้จริงคืออะไร
kcbanner

1
ขอโทษฉันลืมพูดถึงก่อนหน้านี้ โปรดอ้างอิงถึงการปรับปรุงของฉันในคำถาม ขอบคุณสำหรับการช่วยเหลือ.
Mitul

อ้อเข้าใจแล้ว. ดูเหมือนว่ามีปัญหาในไฟล์ hello.js ของคุณ กรุณาโพสต์เนื้อหาของไฟล์นั้น
kcbanner

1
ฉันได้อัปเดตคำตอบของฉันด้วยตัวอย่าง "Hello World" ที่ดีสำหรับโหนด
kcbanner

8

อีกวิธีที่ง่าย

  1. ดาวน์โหลด nodejs ไปยังระบบของคุณ
  2. เปิดคำสั่ง notepad เขียน js "console.log ('Hello World');"
  3. บันทึกไฟล์เป็น hello.js โดยควรเป็นตำแหน่งเดียวกับ nodejs
  4. พร้อมต์คำสั่ง open นำทางไปยังตำแหน่งที่ 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 เมื่อฉันค้นหา node.js ในเมนูเริ่ม windows 7 หากคุณเรียกใช้พรอมต์คำสั่งพิเศษนี้คุณสามารถโหนดอะไรก็ได้ในตำแหน่งใด ๆ โดยไม่ต้องตั้งค่าพา ธ หรือคัดลอก node.exe ทุกที่


3

WinXp: ฉันสร้าง.batไฟล์แล้ว

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

ที่เพิ่งเรียกใช้ my_program.batจาก Explorer หรือในหน้าต่าง cmd



3

Windows/CMDไม่ทราบว่าไฟล์อยู่ที่ใด คุณสามารถพิมพ์ด้วยตนเอง:

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

ทุกครั้งที่คุณเปิดพรอมต์ cmd.exe ใหม่

หรือ (ใน Windows 10)

  1. คลิกขวาที่->This PCproperties
  2. คลิกที่Advanced system settings-> Environment Variables(ด้านล่างขวา)
  3. เลือกและคลิกPathEdit
  4. C:\Program Files\nodejsคลิกที่ใหม่และป้อน
  5. รีบูตและคุณควรจะสามารถเรียกใช้โหนดจากไดเรกทอรีใด ๆ

1

พิมพ์node jscommand prompt ในหน้าจอเริ่มต้น และใช้มัน หรือชุดPATHของโหนดในตัวแปรสภาพแวดล้อม


0

สำหรับทุกคนที่ติดอยู่กับวิธีการเริ่มต้น!

https://github.com/sethvincent/javascripting

คัดลอกลิงค์กรณีใส่ตายที่นี่:

  1. เปิดพร้อมต์คำสั่ง node.js
  2. ทำไดเรกทอรีที่เรียกว่า javascripting โดยพิมพ์ "mkdir javascripting"
  3. เปลี่ยนไดเรกทอรีเป็นโฟลเดอร์ javascripting โดยพิมพ์ "cd javascripting"
  4. สร้างไฟล์ชื่อ intro.js โดยพิมพ์ "touch intro.js" หรือ FOR WINDOWS: "NUL> intro.js"
  5. เปิดไฟล์และพิมพ์จาวาสคริปต์เช่น "Console.log ('hello');"
  6. บันทึกไฟล์และตรวจสอบว่ามันทำงานโดยการพิมพ์ "javascripting ตรวจสอบการแนะนำ."

0

สิ่งที่คุณต้องทำคือคลิกขวาที่ไฟล์. js บน Windows แล้วกด "เปิดพร้อมรับคำสั่ง" หรือ เปิด cmd คัดลอกพา ธ ไปยังโฟลเดอร์ที่มีสคริปต์ของคุณและเรียกใช้คำสั่ง "cd [วางข้อความที่นี่]" จากนั้นทำ "node example.js"


0

ปัญหาคือคุณเปิด Node.js repl ขณะที่ทุกคนคิดว่าคุณอยู่ในพรอมต์คำสั่งโดยอัตโนมัติ สำหรับสิ่งที่คุ้มค่าคุณสามารถเรียกใช้ไฟล์จาวาสคริปต์จาก.loadคำสั่งแทนที่ด้วยคำสั่ง ตัวอย่างเช่น:

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

คำสั่งเดียวกันยังสามารถใช้ในพรอมต์คำสั่งได้หากคุณเริ่มต้นโหนดภายในพร้อมท์คำสั่งโดยการป้อนnodeโดยไม่มีอาร์กิวเมนต์ (สมมติว่าโหนดอยู่ใน PATH)

ฉันพบว่ามันน่าสนใจที่ 1) ทุกคนคิดว่าคุณอยู่ในพรอมต์คำสั่งแทนที่จะทำซ้ำ 2) ไม่มีใครรู้.loadและ 3) สิ่งนี้มี 273 upvotes พิสูจน์ว่าผู้เริ่มต้น 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 ใน dir C: \ script ไฟล์ถัดไปคือ runApp.bat:

C:\scripts\startApp.cmd

0

เพียงเปลี่ยนการเชื่อมโยงไฟล์ของ.jsไฟล์เป็นnode.exeและคุณสามารถเรียกใช้โดยตรงจาก explorer

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.th จากนั้นพิมพ์ cmd แล้วกด Enter
  2. ตอนนี้พร้อมรับคำสั่งจะถูกเปิด

  3. หลังจากชนิดไฟล์พา ธ ซีดีของไฟล์ ex (cd C: \ Users \ user \ Desktop \) จากนั้นกด Enter

  4. โปรดตรวจสอบว่าติดตั้ง NPM หรือไม่ใช้คำสั่งโหนด -v ถ้าคุณติดตั้งจะได้รับรุ่นโหนด
  5. พิมพ์คำสั่งบนพรอมต์คำสั่งเช่นนี้ filename.js โหนด ตัวอย่าง (โหนด app.js)

C:\Users\user\Desktop>node app.js

-1
c:\> node.exe %CD%\hello.js

% CD% จับไดเรกทอรีปัจจุบันภายใต้ DOS


หากคุณต้องการใช้ไดเรกทอรีปัจจุบันไม่จำเป็นต้องให้เส้นทางที่แน่นอน c:\> node.exe hello.jsยังจะทำงาน
Ankit Balyan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.