Sublime Text 3 配置Java开发

时间:2023-12-06 10:33:26

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,进行编译并执行程序。

    Sublime Text 3 配置Java开发

参考

https://www.zybuluo.com/king/note/47271

http://zhuanlan.zhihu.com/p/19745335