2016-05-22 17 views
29

Tôi tạo ra ứng dụng Node.js đơn giản (mã nguồn từ đây https://azure.microsoft.com/en-us/blog/visual-studio-code-and-azure-app-service-a-perfect-fit/)" 'chương trình' Thuộc tính không tồn tại" cho Node.js cơ bản dự án

var http = require('http'); 
http.createServer(function (req, res) { 
    console.log('Got request for ' + req.url); 
    res.writeHead(200, {'Content-Type': 'text/html'}); 
    res.end('<h1>Hello Code and Azure Web Apps!</h1>'); 
}).listen(process.env.PORT); 

Và nhấp VSCode tạo launch.json:

{ 
    "version": "0.2.0", 
    "configurations": [ 
     { 
      "name": "Launch", 
      "type": "node", 
      "request": "launch", 
      "program": "${workspaceRoot}/app.js", 
      "stopOnEntry": false, 
      "args": [], 
      "cwd": "${workspaceRoot}", 
      "preLaunchTask": null, 
      "runtimeExecutable": null, 
      "runtimeArgs": [ 
       "--nolazy" 
      ], 
      "env": { 
       "NODE_ENV": "development" 
      }, 
      "externalConsole": false, 
      "sourceMaps": false, 
      "outDir": null 
     }, 
     { 
      "name": "Attach", 
      "type": "node", 
      "request": "attach", 
      "port": 5858, 
      "address": "localhost", 
      "restart": false, 
      "sourceMaps": false, 
      "outDir": null, 
      "localRoot": "${workspaceRoot}", 
      "remoteRoot": null 
     } 
    ] 
} 

Và vẫn còn khi đưa ra tôi thấy:

Thuộc tính 'chương trình' không tồn tại.

Ai đó có thể giúp gì sai?

Trả lời

22

Tôi tin rằng bạn cần ${workspaceRoot}/server.js, không phải ${workspaceRoot}/app.js cho program. Mã bạn đang sử dụng không có app.js, đó là những gì mà (kém được nói) lỗi nói cho bạn biết.

+0

Ở trên là câu trả lời đúng. Đó là "" chương trình ":" $ {workspaceRoot} /app.js ",' dòng gây ra lỗi; tệp js được tham chiếu bởi dòng này không tồn tại. – Yiling

+0

Tôi không tin rằng điều này là chính xác. Không có gì sai với app.js Tôi đã không thử nó, nhưng Colin trả lời dưới đây là những gì tôi luôn làm. –

+0

Câu trả lời này đúng cho câu hỏi đã cho. Bài đăng trên blog được liệt kê trong câu hỏi sử dụng tệp 'server.js' làm tệp khởi động. Có lẽ một câu trả lời tốt hơn sẽ là "thuộc tính' chương trình đang trỏ đến tập tin sai " – mdickin

12

Tôi cũng gặp sự cố này vì nơi VS Code đặt thư mục .vscode chứa tệp launch.json. Nó đặt nó lên một thư mục vì vậy tôi đã để thêm thư mục vào con đường như đã định nghĩa trong file launch.json:

"chương trình": "$ {} workspaceRoot /myDir/app.js",

Tôi hi vọng cái này giúp được.

+0

Tôi tin rằng bạn có câu trả lời chính xác khi tôi gặp sự cố này một lần nữa trên một máy tính khác và quên những gì tôi đã làm trước đây và nhìn thấy câu trả lời của bạn và nhớ điều này là chính xác. –

1

Tôi đã lãng phí một vài giờ hôm nay để tìm ra vấn đề này. Điều gì làm việc cho tôi là xóa launch.json hiện tại và chạy ứng dụng, nó sẽ nhắc bạn chọn một môi trường, mà trong trường hợp của tôi là Node. Điều này tạo ra một launch.json mới, trong đó tôi cập nhật đường dẫn chương trình.

2

Một vấn đề khác mà tôi gặp phải là đường dẫn đã được định cấu hình Using\\Backslashes\\Like\\So và hoạt động tốt trên Windows, nhưng trên Mac, nó đã đưa ra lỗi ở trên.

(Giải pháp: thay đổi thành /)

Các vấn đề liên quan