2014-06-19 15 views
6

Làm theo hướng dẫn của Heroku Getting Started đã bực bội hơn tôi mong đợi. Những gì tôi có ngay bây giờ có lẽ là một vấn đề cấu hình, và nó có thể có thể được giải quyết trong ít hơn 10 lần nhấp chuột, nhưng tôi không biết những gì các nhấp chuột được và nó lái xe cho tôi lên tường.Foreman, từ Heroku Toolbelt, thoát ra với Lỗi: viết EINVAL mỗi lần

Quản đốc sẽ không bắt đầu. Tôi không có kinh nghiệm với Ruby, hoặc Heroku, hoặc Foreman, và hầu như không có kinh nghiệm với lập trình web, vì vậy tôi hoàn toàn không có ý tưởng gì đang xảy ra ở đây. Đây là thông báo lỗi tôi nhận được, chạy Windows 7 64 bit:

C:\Users\___________\hello_world_basics>foreman start 
09:40:17 web.1 | started with pid 2408 
09:40:18 web.1 | Listening on 5000 
09:40:18 web.1 | 
09:40:18 web.1 | Error: write EINVAL 
09:40:18 web.1 |  at errnoException (net.js:904:11) 
09:40:18 web.1 |  at Socket._write (net.js:645:26) 
09:40:18 web.1 |  at doWrite (_stream_writable.js:226:10) 
09:40:18 web.1 |  at writeOrBuffer (_stream_writable.js:216:5) 
09:40:18 web.1 |  at Socket.Writable.write (_stream_writable.js:183:11) 
09:40:18 web.1 |  at Socket.write (net.js:615:40) 
09:40:18 web.1 |  at Console.log (console.js:53:16) 
09:40:18 web.1 |  at Server.<anonymous> (C:\Users\___________\hello_world_basics\web.js:14:11) 
09:40:18 web.1 |  at Server.g (events.js:180:16) 
09:40:18 web.1 | exited with code 8 
09:40:18 system | sending SIGKILL to all processes 
09:40:18  |  at Server.EventEmitter.emit (events.js:92:17) 

Google đang trốn tránh tôi. Tôi không thể tìm thấy câu trả lời với bất kỳ tìm kiếm nào. Tôi đã khởi động lại, cài đặt lại, viết lại, recopied, đọc lại, vv và tôi không thể tìm thấy một giải pháp. Mã của tôi phản chiếu chính xác mã trên trang Getting Started liên kết ở trên, mà tôi sẽ dán vào đây để tiện theo dõi:

Procfile:

web: node web.js 

web.js

var express = require("express"); 
var logfmt = require("logfmt"); 
var app = express(); 

app.use(logfmt.requestLogger()); 

app.get('/', function(req, res) { 
    res.send('Hello World!'); 
}); 

var port = Number(process.env.PORT || 5000); 
app.listen(port, function() { 
    console.log("Listening on " + port); 
}); 

packge.json

{ 
    "name": "hello_world_basics", 
    "version": "0.0.0", 
    "description": "A simple hello world app.", 
    "main": "web.js", 
    "scripts": { 
    "test": "echo \"Error: no test specified\" && exit 1" 
    }, 
    "repository": { 
    "type": "git", 
    "url": "[email protected]:hello_world_basics.git" 
    }, 
    "keywords": [ 
    "twitter", 
    "quality", 
    "bestof" 
    ], 
    "author": "Lincoln Bergeson", 
    "license": "ISC", 
    "dependencies": { 
    "logfmt": "^1.1.2", 
    "express": "^4.4.3" 
    } 
} 

Một lần nữa, tôi đã theo dõi mọi thứ chính xác như tôi nên có trên trang Bắt đầu, nhưng người quản đốc từ chối bắt đầu. Những gì đang xảy ra ở đây?

Trả lời

0

Đây không phải là giải pháp rất tốt, nhưng tôi đã tìm ra cách làm cho công việc quản đốc. Các hướng dẫn trên trang Bắt đầu phải bị hỏng hoặc lỗi thời. Dưới đây là cách tôi có người quản đốc làm việc:

  1. Giữ package.json giống nhau.
  2. Xóa web.js
  3. Tạo ứng dụng Express chuẩn bằng cách chạy express my_app_name tại dòng lệnh.
  4. Tạo tệp index.js nhập tệp số app.js của Express và bắt đầu máy chủ.
  5. Định cấu hình Procfile để trỏ đến index.js.
  6. Chạy foreman start và nó sẽ hoạt động.

Tôi không biết tại sao tính năng này hoạt động và các bước trước đó thì không. Chúc may mắn, những người tìm kiếm trong tương lai, trong nhiệm vụ của bạn.

8

Dưới đây là một tương tự Stackoverflow Q/A:
Node.js Expres.js Heroku Toolbelt >Foreman Start - Error: write EINVAL

tôi đã có vấn đề tương tự như Jek. Tôi đã sử dụng Express 4.4.4. Tôi hạ cấp tốc độ 3.2.6 và nó hoạt động, nhưng tôi không nên bị buộc phải sử dụng một phiên bản cũ hơn chỉ vì người quản đốc không hỗ trợ nó.

Tôi đã thử node-foreman. Và nó làm việc cho tôi.Tôi làm theo các hướng dẫn bao gồm các bước sau:

  1. NPM cài đặt quản đốc -g
  2. nf bắt đầu

Tôi muốn biết nếu có ai có gợi ý bổ sung.

+0

nút-foreman cũng làm việc cho tôi. –

+0

Tôi đang sử dụng Windows 7 và cũng gặp sự cố; quản đốc sẽ bắt đầu, nhưng sẽ sụp đổ về việc cung cấp một trang web. vì vậy lúc đầu, tôi đã gỡ cài đặt cả git và heroku, khởi động lại, sau đó cài đặt lại thanh công cụ heroku, sau đó tải xuống phiên bản git mới nhất * Git-1.9.5-preview20150319) và vẫn gặp sự cố tương tự. cài đặt gói neman foreman và sử dụng nó để khởi động nó, giải quyết vấn đề. –

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