npm开始寻找/ bin / www在错误的目录下,如何更新

所以我在这里学习这个教程,以获得一个个人/学习node.js项目,我希望在GitHub上工作和存储,并最终将其放到一个实时服务器或云主机上。 它使用node.js,express,monk,mongoDB进行网站设置。 但是,我有一个持续的错误,我没有find一个答案,当我运行'npm开始'。

这里是我的命令窗口输出,当我试图在我的节点快递项目中运行'npm start'时。

我知道:错误:无法find模块'C:\用户\用户名\桌面\ bin \ www'不是我的bin \ www所在的位置(它在nodetest1项目内)。

C:\ Users \ username \ Documents \ GitHub \ TEDResources \ node.js \ nodetest1 < – 正确的path

那么,为什么npm看着那个不正确的地方,我如何更新它来正确地看我的项目文件夹? 我search了我的系统,无法在任何地方findmodule.js。 (使用Windows 7 x64)我也试过nuking node.js,expression并从头开始没有运气。

//控制台错误输出

Microsoft Windows [版本6.1.7601]版权所有(c)2009 Microsoft Corporation。 版权所有。 C:\ Users \ username \ Documents \ GitHub \ TEDResources \ node.js \ nodetest1> npm start

> nodetest1@0.0.0 start C:\Users\username\Documents\GitHub\TEDResources\node.j s\nodetest1 > node ./bin/www module.js:340 throw err; ^ Error: Cannot find module 'C:\Users\username\Desktop\bin\www' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Function.Module.runMain (module.js:497:10) at startup (node.js:119:16) at node.js:906:3 npm ERR! nodetest1@0.0.0 start: `node ./bin/www` npm ERR! Exit status 8 npm ERR! npm ERR! Failed at the nodetest1@0.0.0 start script. npm ERR! This is most likely a problem with the nodetest1 package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node ./bin/www npm ERR! You can get their info via: npm ERR! npm owner ls nodetest1 npm ERR! There is likely additional logging output above. npm ERR! System Windows_NT 6.1.7601 npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod ejs\\node_modules\\npm\\bin\\npm-cli.js" "start" npm ERR! cwd C:\Users\username\Documents\GitHub\TEDResources\node.js\nodetest1 npm ERR! node -v v0.10.32 npm ERR! npm -v 1.4.28 npm ERR! code ELIFECYCLE npm ERR! npm ERR! Additional logging details can be found in: npm ERR! C:\Users\username\Documents\GitHub\TEDResources\node.js\nodetest1 \npm-debug.log npm ERR! not ok code 0 

//npm-debug.log

 0 info it worked if it ends with ok 1 verbose cli [ 'C:\\Program Files\\nodejs\\\\node.exe', 1 verbose cli 'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js', 1 verbose cli 'start' ] 2 info using npm@1.4.28 3 info using node@v0.10.32 4 verbose node symlink C:\Program Files\nodejs\\node.exe 5 verbose run-script [ 'prestart', 'start', 'poststart' ] 6 info prestart nodetest1@0.0.0 7 info start nodetest1@0.0.0 8 verbose unsafe-perm in lifecycle true 9 info nodetest1@0.0.0 Failed to exec start script 10 error nodetest1@0.0.0 start: `node ./bin/www` 10 error Exit status 8 11 error Failed at the nodetest1@0.0.0 start script. 11 error This is most likely a problem with the nodetest1 package, 11 error not with npm itself. 11 error Tell the author that this fails on your system: 11 error node ./bin/www 11 error You can get their info via: 11 error npm owner ls nodetest1 11 error There is likely additional logging output above. 12 error System Windows_NT 6.1.7601 13 error command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start" 14 error cwd C:\Users\kellington\Documents\GitHub\TEDResources\node.js\nodetest1 15 error node -v v0.10.32 16 error npm -v 1.4.28 17 error code ELIFECYCLE 18 verbose exit [ 1, true ] 

//package.json

 { "name": "nodetest1", "version": "0.0.0", "private": true, "scripts": { "start": "node ./bin/www" }, "dependencies": { "express": "~4.9.0", "body-parser": "~1.8.1", "cookie-parser": "~1.3.3", "morgan": "~1.3.0", "serve-favicon": "~2.1.3", "debug": "~2.0.0", "jade": "~1.6.0", "mongodb": "*", "monk": "*" } } 

//app.js

 var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var logger = require('morgan'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var routes = require('./routes/index'); var users = require('./routes/users'); var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); // uncomment after placing your favicon in /public //app.use(favicon(__dirname + '/public/favicon.ico')); app.use(logger('dev')); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public'))); app.use('/', routes); app.use('/users', users); // catch 404 and forward to error handler app.use(function(req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); // error handlers // development error handler // will print stacktrace if (app.get('env') === 'development') { app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: err }); }); } // production error handler // no stacktraces leaked to user app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: {} }); }); module.exports = app; Microsoft Windows [Version 6.1.7601] 

Copyright(c)2009 Microsoft Corporation。 版权所有。

// dir结果

 > nodetest1@0.0.0 start C:\Users\username\Documents\GitHub\TEDResources\node.j s\nodetest1 > dir Volume in drive C is OS Volume Serial Number is F87D-8771 Directory of C:\Users\username\Desktop 10/23/2014 11:13 AM <DIR> . 10/23/2014 11:13 AM <DIR> .. 10/13/2014 09:14 AM 146,016 7f6bd778-1c67-43fd-9865-372789ed7592_Loca lIISWebsite.zip 10/07/2014 03:39 PM 1,086 Blue Eye Macro.lnk 08/28/2014 12:07 PM 1,197 DesignEphiphany.txt 10/22/2014 08:03 AM 2,163 Git Shell.lnk 04/17/2014 10:51 AM 308 GitHub.appref-ms 10/21/2014 10:54 AM <DIR> LocalIISWebsite 10/23/2014 11:11 AM <DIR> node.js 10/14/2014 10:07 AM <DIR> TextDocs 7 File(s) 1,704,717 bytes 8 Dir(s) 352,881,205,248 bytes free 

当我使用express创build我的第一个节点项目时,我也有同样的错误。 但是当我试图运行它使用

 node ./bin/www // it will work 

代替

 npm start 

服务器在端口3000启动。你可以在localhost:3000上检查你的应用程序。
可能是可以帮助一些其他:)

Fwiw,我有同样的错误,事实certificate,已经在3000端口上运行。我提到这一点,因为debugging日志没有提到这一点,只是一个类似的错误,你的。 所以也许这会帮助碰到这个post的人碰巧遇到了我所遇到的问题。

有一个Windowsregistry项“自动运行” – “问题目录”设置为覆盖命令的默认启动目录。 从registry中删除它并解决问题。 谢谢laggedreflex帮我debugging。

按照本教程,我遇到了同样的问题,只能按照说明第一次杀死服务器。 我尝试了一堆东西,包括上面列出的和其他几个线程。 不过,简单地删除或注释掉app.js中的以下内容,

 //var mongo = require('mongodb') 

今天发生在我身上,看同一个教程,同样的错误,但与此设置:

  • Ubuntu 14.04
  • npm v5.11.1
  • 节点v3.9.2

第一个意图是在网上search,发现这个网页,并不能解决所说的问题,但find了一条线索。

第二个意图是使用相同的端口(3000)列出应用程序:

 sudo netstat -ep | grep 3000 

但没有。

第三个意图是将所使用的端口号从“ 3000test ”更改为“ 3001” ,这样做的窍门是。

 var port = normalizePort(process.env.PORT || '3001'); 

从那里,我现在可以浏览http:// localhost:3001,并继续按照教程。

编辑:我发现我错误地使用netstat,这显示什么程序使用端口3000:

 sudo netstat -epa | grep 3000 

ntop正在使用它:

 tcp 0 0 *:3000 *:* ESCUCHAR root 15508 2289/ntop 

所以在我的情况下,更改www文件上的nodetest1端口是唯一可行的解​​决scheme。

希望这可以帮助别人。

我有同样的错误,所以我运行:

 npm install 

接着:

 npm start 

这对我有用

在教程的app.js文件中,确保按如下所示命名索引对象:

 var index = require('./routes/index'); 

这应该纠正错误。

尽pipe教程作者说了什么,如果该行显示如下错误:

 var index = require('./routes/routes');