2014-04-20 46 views
27

我正在学习node.js,我试图使用命令node app.js运行app.js文件,但bash不返回任何内容(也没有错误)。下面是我遵循的步骤:无法运行节点app.js文件

$ brew install node

$ sudo npm install -g express

$ sudo npm install -g express-generator

后,我进入我创建了一个新的文件夹我运行

$ express testsite --hogan -c less

$ cd testsite && npm install

最后

$ node app.js //返回没有错误,但没有,除了新的命令行后面...

任何帮助,在此将是巨大的。

谢谢!

+0

真的显示日志信息?我收到一个错误,指向我:http:// goo。gl/YnK8p0 –

+0

当我修复该错误(注释少,谁需要?!),我运行它与节点app.js,它工作正常。 '在端口3001上监听的Express服务器'。命令'http.createServer(app).listen(app.get('port'),function(){});'不应该结束进程 - 是否存在? –

+0

好的,我会删除它,然后再试一次,我正在使用这个[教程](https://www.youtube.com/watch?v=ndKRjmA6WNA)。 – Shivam

回答

69

尝试npm starttestsite目录。

看看的package.json

scripts : { start : node bin/www } 

所以你必须在目录下执行WWW

所以不是node app.js使用node bin/www

+0

我以前只做过,但仍然没有用 – learner

+4

有人可以解释它为什么起作用,它的目的是什么? –

+0

很棒的答案。 npm start为我做了所有的工作。干杯@ user626818 –

2

运行后...

express testsite --hogan -c less 

我得到以下信息:

install dependencies: 
    $ cd testsite && npm install 

run the app: 
    $ DEBUG=test ./bin/www 

node app.js并没有为我工作之一,但./bin/www一样。

FYI npm start也适用于我。这基本上运行./bin/www

编辑:很好奇为什么node.app不工作,因为我遵循相同的视频指南。在评论中,有人表示,自从制作视频后,节点改变了他们的应用程序启动流程

12

尝试运行的NodeJS app.js而不是节点app.js

+4

这对我有效。为什么这个工作? – Pikamander2

+0

实际上,node命令是可以使用apt下载的节点遗留包的一部分... –

+0

@ Pikamander2 nodejs用于ubuntu而不是节点,不记得为什么或者它在其他linux风格上是相同的。 –

0

您必须添加此代码app.js文件,这会告诉快递为侦听端口3000和

app.listen(3000, function() { 
console.log("Express server listening on port 3000"); 
});