­

在Sublime Text中可以很容易配置新的编译运行命令,下面的截图是汉化版的中文菜单,英文菜单请直接对照。

首先需要在本地安装Node,默认的Node会加入到系统的环境变量,这样执行Node命令时就不需要到安装路径下执行了。

选择“新编译系统”,在打开文件中插入以下代码:

  1. {
  2. "cmd": ["node", "$file"],
  3. "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  4. "selector": "source.js",
  5. "shell":true,
  6. "encoding": "utf-8",
  7. "windows":
  8. {
  9. "cmd": ["node", "$file"]
  10. },
  11. "linux":
  12. {
  13. "cmd": ["killall node; node", "$file"]
  14. }
  15. }

保存为Node.sublime-build,以后想运行当前文件,直接使用快捷键“Ctrl+B”即可,上述这段代码是大部分网上教程分享的,但是这个配置有一个问题,在windows系统中,这样每Build一次就会新产生一个Node进程,占用1个端口,下次想重新Build时会提示端口被占用

  1. function logger(req,res,next){
  2. console.log('%s %s',req.method,req.url);
  3. next();
  4. }
  5. function hello(req,res){
  6. res.setHeader('Content-Type','text/plain');
  7. res.end('hello world');
  8. }
  9. var connect=require('connect');
  10. var app=connect();
  11. app.use(logger).use(hello).listen(3000);
例如上述的connect中间件程序中监听了3000端口,第一次Build时没有错误,但是第二次Build就会发生下面的错误。

网上又有人给出了下面的配置来解决问题:

  1. {
  2. "cmd": ["node", "$file"],
  3. "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  4. "selector": "source.js",
  5. "shell":true,
  6. "encoding": "utf-8",
  7. "windows":
  8. {
  9. "cmd": ["taskkill /F /IM node.exe", ""],
  10. "cmd": ["node", "$file"]
  11. },
  12. "linux":
  13. {
  14. "cmd": ["killall node; node", "$file"]
  15. }
  16. }
这样配置的本意是在cmd命令前面加个kill node进程的命令,但是实际测试并没有起作用,最后我将第一行命令改成如下所示同时执行两个命令,在windows系统上就没出现上述问题了。
  1. {
  2. "cmd": "taskkill /F /IM node.exe & node \"$file\"",
  3. "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
  4. "selector": "source.js",
  5. "shell":true,
  6. "encoding": "utf-8",
  7. }

Sublime Text3 配置Node.js运行命令的更多相关文章

  1. nodeJS学习(6)--- Sublime Text3 配置Node.js 开发环境

    参考:http://www.bubuko.com/infodetail-798008.html http://www.cnblogs.com/bluesky4485/p/3928364.html 1. ...

  2. sublime text3配置node.js开发环境

    今天配置sublime下node.js网上搜索很多方法. 首先:传统的方法是 1.GIT方法 可直接输入 Git clone https://github.com/tanepiper/SublimeT ...

  3. sublime text3配置node.js环境,以及出现的问题

    1) 下载sublime并安装,下载列表:https://www.sublimetext.com/3 2) 下载sublime的nodejs插件,需是集成Nodejs插件到sublime中,下载地址: ...

  4. 在windows环境下基于sublime text3的node.js开发环境搭建

    首先安装sublime text3,百度一堆,自己找吧.理论上sublime text2应该也可以.我只能说一句:这个软件实在是太强悍了. 跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了 ...

  5. 在Sublime Text3 开发Node.js遇到的一个小问题

    原文摘自我的前端博客,欢迎大家来访问 http://www.hacke2.cn 以前的Sublime Text 2包管理出现问题了,不能安装新包,让人开发很捉急,今天装了个3,这个问题解决了 那我们就 ...

  6. 使用sublime text3配置c++编译运行

    首先我们可以下载一个Dev-c++,这东西可以自己帮你配置好网上提示的那一大堆奇怪的文件... 网上博客大都在说些什么添加各种编译环境,加入sublime-build什么的..然而作为一个喜欢偷懒的人 ...

  7. Node.js-sublime text3 配置node.js(ERROR: The process "node.exe" not found.)

    默认已经安装好sublime.node和npm 1.sublime的node.js插件下载 由于在package control上经常下载失败,所以这里直接从GitHub上进行下载! GitHub下载 ...

  8. sublime text配置node.js调试

    1. 首先到 nodejs.org 下载 Node.js 安装包并安装.2. 打开 Sublime Text 2 编辑器.选择菜单 Tools --> Build System --> n ...

  9. Sublime Text3配置Lua运行环境

    Sublime Text3配置Lua运行环境 前言 要问现在哪个编译器最能扛得住潮流,要数Sublime Text3了,由于它的轻量,插件丰富,美观,造就了一大批粉丝(本菜鸡也是哦) 在以前的工作中使 ...

随机推荐

  1. 设计算法,求AB两个整数集合的交集

    [本文链接] http://www.cnblogs.com/hellogiser/p/ab-set-intersection.html [分析] 思路1:排序法 对集合A和集合B进行排序(升序,用快排 ...

  2. 使用Java中File类批量创建文件和批量修改文件名

    批量创建文件 int cont = 1; String s = "E:\\学习资料\\Java笔记-"; while(cont<100){ File f = new File ...

  3. 【leetcode】Word Search (middle)

    今天开始,回溯法强化阶段. Given a 2D board and a word, find if the word exists in the grid. The word can be cons ...

  4. Debian8.3.0下安装Odoo8.0步骤

    Debian8.3.0下安装Odoo8.0的方法 假设你已经安装好了Debian 系统,使用root帐号执行如下命令 # apt-get update && apt-get upgra ...

  5. 警告:Assigning to 'id<Delegate>' from incompatible type 'ViewController *const_st

    原因: 你自己写了代理,设置了   delegate = self.但是self 没有遵守这个协议 只需要遵守这个协议就可以消除警告.

  6. Java多线程题库

    一.    填空题 处于运行状态的线程在某些情况下,如执行了sleep(睡眠)方法,或等待I/O设备等资源,将让出CPU并暂时停止自己的运行,进入____阻塞_____状态. 处于新建状态的线程被启动 ...

  7. linux service命令常见使用方法

    service命令,顾名思义,就是用于管理Linux操作系统中服务的命令. 1. 声明:这个命令不是在所有的linux发行版本中都有.主要是在redhat.fedora.mandriva和centos ...

  8. 【Mongodb】3.X 配置身份验证

    配置身份验证详解: 开启认证: 启动MongoDB./mongodb --syslog --fork --port 20000  --auth 1.如果不添加参数:auth,表明用默认的root的权限 ...

  9. Redis自定义动态字符串(sds)模块(二)

    sds模块的具体实现: 1.sdsnewlen 根据参数生成一个sds字符串 sds sdsnewlen(const void *init, size_t initlen) { struct sdsh ...

  10. java 设置允许ajax XMLHttpRequest 请求跨域访问

    怎样才能算跨域?协议,域名,端口都必须相同,才算在同一个域. 方案1: 使用XMLHttpRequest...  异步请求不能跨域访问,除非要访问的网页响应头信息设置为允许跨域访问. 将网页设置为允许 ...