nodejs备忘总结(一) -- node和express安装与配置,新建简单项目(附安装配置过程中遇到问题的解决方法)
- 安装node
本文以安装node_v8.9.0为例(win10环境),下载node-v8.9.0-x64.msi插件
下载后,安装,安装目录默认为C:\Program Files\nodejs
配置环境变量,系统变量->path,添加“C:\Program Files\nodejs\”
运行cmd,输入node -v
C:\Windows\system32>node -v
v8.9.0
- 安装express
找到node安装目录C:\Program Files\nodejs,命令行运行
C:\Program Files\nodejs> npm install express
运行结果
npm WARN registry Unexpected warning for https://registry.npmjs.org/: Miscellaneous Warning ENOENT: request to https://registry.npmjs.org/express failed, reason: getaddrinfo ENOENT registry.npmjs.org:443 npm WARN registry Using stale package data from https://registry.npmjs.org/ due to a request error during revalidation. npm WARN enoent ENOENT: no such file or directory, open 'C:\Program Files\nodejs\package.json'e_modules\libnpx npm WARN nodejs No description npm WARN nodejs No repository field. npm WARN nodejs No README data npm WARN nodejs No license field. npm ERR! path C:\Program Files\nodejs\node_modules\npm\node_modules\bytes npm ERR! code ENOENT npm ERR! errno -4058 npm ERR! syscall rename npm ERR! enoent ENOENT: no such file or directory, rename 'C:\Program Files\nodejs\node_modules\npm\node_modules\bytes' -> 'C:\Program Files\nodejs\node_modules\bytes' npm ERR! enoent This is related to npm not being able to find a file. npm ERR! enoent npm ERR! A complete log of this run can be found in: npm ERR!
npm install express失败可能导致nodejs/node_modules文件夹被清空,导致后续的npm install操作会失败,通过重新安装node-v8.9.0-x64.msi修复即可。
上面操作失败是因为找不到相关的文件导致,需要更改到npm文件夹目录下去操作
> cd C:\Program Files\nodejs\node_modules\npm
> npm install express
还是报错,查找了下原因,当前电脑用户没有修改下面这个文件夹的权限(C:\Program Files\nodejs\node_modules\npm\node_modules),
install的express是安装在这个目录下,网上提供的解决方法是用管理员的身份运行命令,
(win10环境)笔者是直接右击文件夹,属性->安全,组或用户那里选择当前电脑用户,
然后权限把“修改”设置为允许。接着重新运行npm install express就可以正常安装
运行结果
npm notice created a lockfile as package-lock.json. You should commit this file.
+ express@4.16.
added packages in .339s
安装express-generator
> npm install express-generator
运行结果
+ express-generator@4.16.
added packages in .866s
安装完成后,查看版本号
C:\Windows\system32>express -V
'express' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
在网上查了一部分资料,解决这个问题的关键点在于找到express.cmd被安装的位置
不同版本安装的位置可能有所不同,比如有的会在(C:\Program Files\nodejs\node_modules\.bin),
有的是被直接安装在node_modules文件夹下;
本人电脑是被安装位置到C:\Program Files\nodejs\node_modules\npm\node_modules\.bin

配置express环境变量
系统变量->path,添加C:\Program Files\nodejs\node_modules\npm\node_modules\.bin
配置完成后,执行查询版本命令
C:\Windows\system32>express -V

语法错误,修改成express --version
C:\Windows\system32>express --version
4.16.
到这里,node和express安装配置完成
- 新建项目
打开要新建项目的文件目录,新建项目myApp
> cd node_workspace/debugDemo > express myApp
运行结果:
warning: the default view engine will not be jade in future releases
warning: use `--view=jade' or `--help' for additional options
create : myApp\
create : myApp\public\
create : myApp\public\javascripts\
create : myApp\public\images\
create : myApp\public\stylesheets\
create : myApp\public\stylesheets\style.css
create : myApp\routes\
create : myApp\routes\index.js
create : myApp\routes\users.js
create : myApp\views\
create : myApp\views\error.jade
create : myApp\views\index.jade
create : myApp\views\layout.jade
create : myApp\app.js
create : myApp\package.json
create : myApp\bin\
create : myApp\bin\www
change directory:
> cd myApp
install dependencies:
> npm install
run the app:
> SET DEBUG=myapp:* & npm start
在文件目录下可以找到新建的myApp项目
在myApp目录下新建hello.js
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
console.log("nodejs start listen 8888 port!");
然后在项目目录下,运行node hello.js
E:\node_workspace\debugDemo\myApp>node hello.js nodejs start listen 8888 port!
在浏览器输入http://127.0.0.1:8888/
页面显示 Hello World
--本篇到此结束--
nodejs备忘总结(一) -- node和express安装与配置,新建简单项目(附安装配置过程中遇到问题的解决方法)的更多相关文章
- nodejs备忘总结(一) -- 基础入门
什么是NodeJS JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器. 每一种解析器都是一 ...
- 【win7下安装node.js错误:roling back action】与【"grunt" 不是内部或外部命令】 解决方法
[win7下安装node.js错误:roling back action] 解决方法: Node.js 服务器端的JavaScript Node.js 是一个基于Chrome JavaScript 运 ...
- nodejs 备忘
引入模块(在于你用什么模块,需要的模块可以用终端进行安装, npm,一般express,swig,body-parser,cookies,markdown) 设置模块 设置渲染 var express ...
- centos7 node express项目 将http接口升级为https接口的解决方法
1.将对应的ssl证书放到项目文件中(我装的镜像是oneinstack的,创建项目时可以直接选择生成ssl证书的项目,即 xxx.key 和 xxx.crt 文件): 2.修改bin/www文件,修改 ...
- Node.js+Express+MVC+Mysql小白创建新项目
1.打开CMD命令窗口,这一步不会的,回家休息,不要看了 2.npm install -g yo 等待时间看个人电脑情况. 如果没有npm命令,建议先安装npm ,npm安装介绍:https://d ...
- 备忘DES带向量的加密和解密与DES简单加密与解密
package com.ego.util; import java.security.Key; import java.security.SecureRandom; import java.secur ...
- 【nodejs笔记1】配置webstorm + node.js +express + mongodb开发博客的环境
1. 安装webstorm 并破解 2. 安装node (以及express框架) 至官网下载并安装.(http://nodejs.org)v0.10.32 msi 安装后测试,打开命令行, c ...
- Nodejs学习笔记(八)--- Node.js + Express 实现上传文件功能(felixge/node-formidable)
目录 前言 formidable简介 创建项目并安装formidable 实现上传功能 运行结果 部分疑惑解析 写在之后 前言 前面讲了一个构建网站的示例,这次在此基础上再说说web的常规功能---- ...
- Nodejs学习笔记(七)--- Node.js + Express 构建网站简单示例
目录 前言 新建项目.建立数据库以及其它准备工作 新建express + ejs 项目:sampleEjs 创建数据库 修改package.json文件,安装session和mysql模块 样式和JQ ...
随机推荐
- HDU 2680 Choose the best route 最短路问题
题目描述:Kiki想去他的一个朋友家,他的朋友家包括所有的公交站点一共有n 个,一共有m条线路,线路都是单向的,然后Kiki可以在他附近的几个公交站乘车,求最短的路径长度是多少. 解题报告:这道题的特 ...
- 第7月第20天 epoll
1. ) { struct sockaddr in_addr; socklen_t in_len; int infd; char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV]; ...
- mysql数据库的快捷键
mysql数据库快捷键 ctrl+q 打开查询窗口 ctrl+/ 注释sql语句 ctrl+shift +/ 解除注释 ctrl+r 运行查询窗口的sql语句 ctrl+shift+r 只运行选中的s ...
- 2017/05/22 java 基础 随笔
多态:一种事物多种形态 前提:1.子父类继承关系 2.方法复写.重写 3.父类引用指向子类对象 成员变量: package com.huawei; public class Demo1 { publi ...
- linux backtrace()详细使用说明,分析Segmentation fault【转】
转自:http://velep.com/archives/1032.html 在此之前,开发eCos应用程序时,经常碰到程序挂掉后,串口打印输出一大串让人看不懂的数据.今天才明白,原来这些数据是程序挂 ...
- 一个无锁消息队列引发的血案(四)——月:RingQueue(上) 自旋锁
目录 (一)起因 (二)混合自旋锁 (三)q3.h 与 RingBuffer (四)RingQueue(上) 自旋锁 (五)RingQueue(中) 休眠的艺术 (六)RingQueue(中) 休眠的 ...
- poj1033
模拟题,注意不需要移动的情况要特殊输出 #include <cstdio> #include <cstring> #include <cstdlib> using ...
- 浅谈js设计模式 — 命令模式
命令模式最常见的应用场景是:有时候需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是什么.此时希望用一种松耦合的方式来设计程序,使得请求发送者和请求接收者能够消除彼此之间的耦 ...
- 批量初始化数组和memset函数
对于数组的初始化有一下三种方式: int a[]={1,2,3,4,5} //通过判断初始化值得个数来却仍数组长度 int b[5]={1,2,3} //数组长度为5,可是初始值却只有三个,因此,不 ...
- java innerclasses(内部类)
可以将一个类定义在另一个类的内部,这就是内部类 创建内部类的方式---把类的定义置于外部类的里面 典型的情况是,外部类将有一个方法,该方法返回一个指向内部类的引用,就像在to()和contents() ...