Sublime Text 3 配置Java开发
内嵌模式
在Sublime内部输出面板显示执行过程
配置JavaC - INSET.sublime-build
打开Sublime的包目录(选择菜单:
Perferences > Browse Packages
),进入User
文件夹,-
新建文件
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插件
- 打开Sublime的包目录(选择菜单:
Perferences > Browse Packages
),进入AutoHotkey
文件夹,阅读README.md
。 - 根据
Advanced Configuration
这一节介绍进行配置:
选择Preferences > Package Settings > AutoHotkey > AutoHotkey Settings - User
。
建议拷贝AutoHotkey Settings - Default
内容到AutoHotkey Settings - User
,进行更改配置AutoHotkey/Ahk2Exe/帮助文档的路径。
最终AutoHotkey Settings - User
(C:\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
- 选择菜单:
Tools > Build System > AutoHotKey
。
测试配置结果
-
新建
HelloWorld.ahk
:MsgBox, ,TEST, Hello World
在编辑文件时,选中
MsgBox
文本/光标放在MsgBox
文本中,- 按F1,会跳往CHM帮助文档的
MsgBox
章节; - 按Ctrl+Alt+H,会弹出
MsgBox
的函数参数提示。
- 按F1,会跳往CHM帮助文档的
编译&运行
按Ctrl+B/Ctrl+Shift+B,进行编译并执行程序。
参考
https://www.zybuluo.com/king/note/47271
http://zhuanlan.zhihu.com/p/19745335