指戈長白山麓

更願諸君 矢勤矢勇

导航

Sublime Text 3 配置Java开发

Sublime Text 3 配置Java开发

内嵌模式

在Sublime内部输出面板显示执行过程

配置JavaC - INSET.sublime-build

  1. 打开Sublime的包目录(选择菜单:Perferences > Browse Packages),进入User文件夹,

  2. 新建文件JavaC - INSET.sublime-build

    {
        "cmd": ["C:/Users/AA/AppData/Roaming/Sublime Text 3/Packages/User/JavaC - INSET.cmd", "$file"],
        "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
        "selector": "source.java",
        "shell": true,
        // Windows 中文版支持的编码格式是GBK,这条配置是通知Sublime Text 2以系统环境的编码格式输出,如果不加这一条配置,在编译运行时就会提示Decode error - output not utf-8错误
        "encoding":"GBK"
    }
    

### 配置JavaC - INSET.cmd
1. 在User文件夹(`C:/Users/final/AppData/Roaming/Sublime Text 3/Packages/User/`)
    新建`JavaC - INSET.cmd`:

    ```batch
    @ECHO OFF
    cd %~dp1
    ECHO Compiling %~nx1...
    IF EXIST %~n1.class (
        DEL %~n1.class
    )

    rem javac %~nx1
    rem javac -encoding GBK %~nx1
    javac -encoding UTF-8 -d . %~nx1

    IF EXIST %~n1.class (
        ECHO ^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>
        rem ECHO.
        java %~n1
        rem ECHO.
        ECHO ^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>
    )
    ```

### 配置默认编译系统JavaC - INSET 
1.  选择菜单:`Tools > Build System > JavaC - INSET`。
    ![「JavaC - INSET」被勾选](http://images2015.cnblogs.com/blog/689465/201604/689465-20160402225418566-1131067841.png)

### 测试配置结果
1. 新建`Demo.java`:
    
    ```java
    public class Demo {
        public static void main(String[] args) {
            System.out.println("This is my test program.");
            int a = 10;
            int b = 30;
            int c = a + b;
            System.out.println("结果 Result : " + c);
        }
    }
    ```
2. 编译&运行
    按<kbd>Ctrl+B</kbd>/<kbd>Ctrl+Shift+B</kbd>,进行编译并执行程序。
    ![运行结果](http://images2015.cnblogs.com/blog/689465/201604/689465-20160402225506848-1353598310.png)


## 外调模式
在Sublime外部调用系统控制台显示执行过程

### 配置JavaC - OUTSET.sublime-build
1.  打开Sublime的包目录(选择菜单:`Perferences > Browse Packages`),进入`User`文件夹,
2.  新建文件`JavaC - OUTSET.sublime-build`:

    ```json
    {
        // 命令和参数,未指定路径则在PATH环境变量中找
        "cmd": ["javac","-encoding","UTF-8","-d",".","$file"],
        // 可选。获取cmd的错误输出
        "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
        // 可选。`工具`菜单中`编译`为`自动`时生效
        "selector": "source.java",
        // 可选。输出"cmd"的编码。必须是合法的Python编码,缺省为"UTF-8"
        "encoding":"UTF-8",
        // variants 可选。用来替代主构建系统的备选。如果构建系统的"selector"与激活的文件匹配,变量"name"则会出现在 Command Palette 中。
        "variants":
            [
                {
                     // 仅在"variants"中是合法的 (详见 variants)。用来标识系统中不同的构建系统。如果"name"是"Run" ,则会显示在Tools | Build System 菜单下,并且可以使用Ctrl + Shift + B调用
                    "name": "Run",
                    // 可选。如果该选项为"true" ,"cmd"则可以通过shell运行。
                    "shell": true,
                    "cmd" :  ["start","cmd","/c", "java ${file_base_name} &echo. & pause"],
                    // /c是执行完命令后关闭cmd窗口,
                    // /k是执行完命令后不关闭cmd窗口。
                    // echo. 相当于输入一个回车
                    // pause命令使cmd窗口按任意键后才关闭
                    // 可选。在运行首行的"cmd"前会切换到该目录。运行结束后会切换到原来的目录。
                    "working_dir": "${file_path}",
                    "encoding":"UTF-8"
                }
            ]
        // 还有:
        // line_regex 可选。当"cmd"的错误输出中,file_regex与该行不匹配,如果line_regex存在,并且确实与当前行匹配, 则遍历整个缓冲区,直到与file regex匹配的行出现,并用这两个匹配决定最终要跳转的文件或行。
        // target 可选。运行的Sublime Text命令,缺省为"exec" (Packages/Default/exec.py)。该命令从 .build-system中获取配置数据。用来替代缺省的构建系统命令。注意,如果你希望替代构建系统的缺省命令,请在.sublime-build 文件中专门设置。
        // env 可选。在环境变量被传递给"cmd"前,将他们封装成词典。
        // path 可选。该选项可以在调用"cmd"前替换当前进程的PATH 。原来的 PATH 将在运行后恢复。使用这个选项可以在不修改系统设置的前提下将目录添加到 PATH 中。
    }
    ```

### 配置默认编译系统JavaC - OUTSET 
1.  选择菜单:`Tools > Build System > JavaC - OUTSET`。

### 测试配置结果
1. 新建`Demo.java`:

    ```java
    public class Demo {
        public static void main(String[] args) {
            System.out.println("This is my test program.");
            int a = 10;
            int b = 30;
            int c = a + b;
            System.out.println("结果 Result: " + c);
        }
    }
    ```
2. 编译&运行
    + 编译
    按<kbd>Ctrl+Shift+B</kbd>,选中`JavaC - OUTSET`进行编译;
    ![选中「JavaC - OUTSET」进行编译](http://images2015.cnblogs.com/blog/689465/201604/689465-20160402225549879-129595249.png)
    + 运行
    按<kbd>Ctrl+Shift+B</kbd>,选中`JavaC - OUTSET - Run`执行程序。
    ![运行结果](http://images2015.cnblogs.com/blog/689465/201604/689465-20160402225621926-1192860721.png)


## 附录

### Demo - HelloJava8
```java
import java.util.*;

public class HelloJava8 {
    public static void main(String[] args) {
    List<String> names = Arrays.asList("春", "夏", "秋", "冬");
    names.stream()
        .filter(name -> name.length() >= 5)
        .forEach(name -> System.out.println(name));
    }
}

搭建AutoHotkey开发环境

安装AutoHotKey插件

Ctrl+Shift+P,输入pci后回车,选中AutoHotKey进行安装。

配置AutoHotKey插件

  1. 打开Sublime的包目录(选择菜单:Perferences > Browse Packages),进入AutoHotkey文件夹,阅读README.md
  2. 根据Advanced Configuration这一节介绍进行配置:
    选择 Preferences > Package Settings > AutoHotkey > AutoHotkey Settings - User
    建议拷贝AutoHotkey Settings - Default内容到AutoHotkey Settings - User,进行更改配置AutoHotkey/Ahk2Exe/帮助文档的路径。
    最终AutoHotkey Settings - UserC:\Users\final\AppData\Roaming\Sublime Text 3\Packages\User\AutoHotkey.sublime-settings)的内容如下:
    {
    
        // Set here path to AutoHotkey.exe executable to use for the build and ahkrunpiped command.
        // AutoHotKeyExePath and Ahk2ExePath are a list of string paths - starting from the beginning of the list if a path is not found then the subsequent path will be attempted.
    
        "word_separators": "./\\()\"'-:,.;<>~!@#$^&*|+=[]{}`~?",
    
        "AutoHotKeyExePath": [ "D:\\programmer\\util\\AHK\\AutoHotkey.exe" ],
    
        "Ahk2ExePath": [  "D:\\programmer\\util\\AHK\\Compiler\\Ahk2Exe.exe" ],
    
        "AhkHelpPath": [  "D:\\programmer\\util\\AHK\\AutoHotkey.chm" ]
    
    }
    

配置默认编译系统AutoHotKey

  1. 选择菜单:Tools > Build System > AutoHotKey

测试配置结果

  1. 新建HelloWorld.ahk

    MsgBox,  ,TEST, Hello World
    

    在编辑文件时,选中MsgBox文本/光标放在MsgBox文本中,

    • F1,会跳往CHM帮助文档的MsgBox章节;
    • Ctrl+Alt+H,会弹出MsgBox的函数参数提示。
  2. 编译&运行
    Ctrl+B/Ctrl+Shift+B,进行编译并执行程序。
    运行结果

参考

https://www.zybuluo.com/king/note/47271
http://zhuanlan.zhihu.com/p/19745335

posted on 2016-04-02 21:24  指戈  阅读(4462)  评论(0编辑  收藏  举报