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');