2014-09-23 99 views
2

在我的Node项目的目录中输入npm start后,我看到纺纱管符号显示npm正在加载。但是,此图形无限期显示,没有任何反应。没有提供错误消息。我如何修复或至少诊断此问题?命令`npm start`不执行任何操作

的package.json如下:

{ 
    "name": "Project_Name", 
    "version": "0.0.1", 
    "private": true, 
    "main": "./bin/www", 
    "scripts": { 
    "start": "node ./bin/www" 
    }, 
    "dependencies": { 
    "express": "~4.2.0", 
    "static-favicon": "~1.0.0", 
    "morgan": "~1.0.0", 
    "cookie-parser": "~1.0.1", 
    "body-parser": "~1.0.0", 
    "debug": "~0.7.4", 
    "jade": "~1.3.0", 
    "request": "~2.39.0", 
    "oauth-1.0a": "~0.1.1", 
    "passport": "~0.2.0", 
    "express-session": "~1.7.2", 
    "passport-local": "~1.0.0", 
    "connect-flash": "~0.1.1" 
    } 
} 

我怀疑,缺少的依赖可能是一个问题,但是这似乎并没有成为一个问题。我跑了npm-install-missing模块,得到了以下结果:

enter image description here

+0

请发表您的'package.json'及任何其他相关文件。 – Scimonster 2014-09-23 14:28:28

+1

这是我的package.json:https://gist.github.com/anonymous/2aafa5bfeb84b5be4b99 – hawkharris 2014-09-23 14:33:53

+1

你的'start'脚本没有调用JS文件......它应该不是这样的:'“start”:“node ./bin/www/server.js“' – mccannf 2014-09-23 14:49:10

回答

2

问题曾与依赖性有关。首先,我安装了npm-install-missing模块,了解应用程序的依赖关系:

npm install -g npm-install-missing

在安装模块,我可以运行它,看看哪些依赖需要更新:

npm-install-missing

的结果在上面的问题中显示为屏幕截图。你会注意到express-session,crypto-jspassport是红色的。我需要安装这些模块的预期版本:

npm install -g [email protected]

npm install -g [email protected]

npm install -g [email protected]

安装依赖关系之后,我又跑npm start。该应用程序出现在localhost:3000

+1

我已经这样做了,但没有结果 – learner 2015-07-28 16:09:51

5

1-您必须安装连接和服务器静电模块

npm install connect serve-static 

2 - 你必须创建一个包含server.js文件:

var connect = require('connect'); 
var serveStatic = require('serve-static'); 
connect().use(serveStatic(__dirname)).listen(8000); 

3-运行命令:

node server 

4-用于测试在nodejs目录中添加一个HTML文件(index.html)

5打开浏览器,并把:

http://localhost:8000/index.html

服务器正在运行,并且您的网页HTML是dipalyed

0

其实只要您运行npm start

它运行一个包的“开始”脚本,如果有的话。如果没有指定版本,则启动“活动”版本。

因此,NPM看你的package.json文件应具有类似

“开始”: “的WebPack-DEV-服务器--hot”

然后它会做那。如果NPM无法找到你的启动脚本,则默认为:

节点server.js

相关问题