SublimeText3-Nodejs环境配置

下载SublimeText-Nodejs

本文基于window环境测试的说明,希望能给大家带来帮助。

1、直接下载压缩包后解压到sublime text的package目录中。查看package目录在哪可以通过菜单栏中的Preferences–>浏览程序包Browse Packages直接打开package目录。

2、使用git命令下载到Sublime的Data/package目录

git clone https://github.com/tanepiper/SublimeText-Nodejs 

注意:下载好后,将SublimeText-Nodejs目录名称改为Nodejs

修改nodejs配置项

  • 修改第一个文件,在package目录下的nodejs目录中,打开Nodejs.sublime-setting配置文件,修改"node_command""npm_command"两项,修改好后内容如下:

    {

    // save before running commands
    "save_first": true,
    // if present, use this command instead of plain "node"
    // e.g. "/usr/bin/node" or "C:\bin\node.exe"
    //"node_command": false, //修改前
    
    "node_command": "D:/DeveloperInstall/nodejs/node.exe",  //修改后
    // Same for NPM command
    // "npm_command": false, //修改前
    
    "npm_command": "D:/DeveloperInstall/nodejs/npm.cmd",  //修改后
    // as 'NODE_PATH' environment variable for node runtime
    "node_path": false,
    
    "expert_mode": false,
    
    "ouput_to_new_tab": false
    

    }

  • 修改第二文件,接下来打开Nodejs.sublime-build配置文件,需要修改一下两项:

    一个是"encoding"项,为了避免乱码code,需要将"cp1252"改成"utf8"
    一个是windows下的"cmd"命令,windows下面的cmd可以直接 "cmd": ["node", "$file"],但是这样非常不利于开发环境,因为这样的话每次build都会重新启动一个node.exe进程,且会占用一个端口,这肯定是我们不希望的。上文中的cmd原本是想在启动node.exe之前讲node.exe进程都杀掉,然后再启动node.exe,但是这个命令写的不对,直接使用的话是编译不成功的。对cmd命令需要做简单的处理,修改之后的文件如下:

    {

    "cmd": ["node", "$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.js",
    "shell":true,
     //"encoding": "cp1252", //修改前
    "encoding": "utf8",//修改后
    "windows":
    {
           //"cmd": ["taskkill /F /IM node.exe & node", "$file"] //修改前
          "cmd": ["D:/DeveloperInstall/nodejs/node.exe", "$file"] //修改后
      },
    "linux":
      {
          "cmd": ["killall node; node", "$file"]
      },
    "osx":
    {
          "cmd": ["killall node; node $file"]
    }
    

    }

重启sublime text之后,配置就算完成了。我们写一小段代码来验证一下是否可以正常运行。

var http = require('http');
var os = require('os');
http.createServer(function (request, response) {
    response.writeHead(200, {'Content-Type': 'text/plain'});
    response.end('Hello Nodejs\n');
}).listen(3000);
console.log('Server running at http://127.0.0.1:3000/');

Ctrl+b编译这段代码之后,sublime text窗口中就会显示

Server running at http://127.0.0.1:3000/

若之前有运行的node进程在,则会先杀掉node进程,再启动node,显示如下:

成功: 已终止进程 “node.exe”,其 PID 为 5736。

Server running at http://127.0.0.1:3000/

到此,服务端算是启动成功,打开浏览器,输入http://127.0.0.1:3000/,页面显示Hello World则表示交互正常。

注意:如果出现以下问题

[WinError 2] 系统找不到指定的文件。 
[cmd: ['erl', '-compile', 'H:\\github\\web\\test\\test.js']]

先检查sublime> tools > Builde System ,看看选中的是否是Nodejs或者是Automatic,如果不是,就恭喜你了。

[WinError 2] 系统找不到指定的文件。
[cmd: ['g++','node', 'H:\\github\\web\\test\\test.js']]

1、这个问题是由于没有将GCC的安装目录加入path环境变量,从上图的错误提示path中就可以发现。,所以,将mingw的安装目录中的bin目录的路径填入PATH环境变量。重启程序,就可以解决了.

文章目录
  1. 1. 下载SublimeText-Nodejs
  2. 2. 修改nodejs配置项