zoukankan      html  css  js  c++  java
  • 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:UsersfinalAppDataRoamingSublime Text 3PackagesUserAutoHotkey.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

  • 相关阅读:
    流处理 —— Spark Streaming中的Window操作
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.8 提供带注解的限定符元数据
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.7 为自动检测组件提供作用域
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.6 给自动检测组件命名
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.5 在组件中定义bean的元数据
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.4 使用过滤器自定义扫描
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.3 自动检测类和注册bean的定义
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.2 元注解
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10.1 @Component和深层的构造型注解
    Spring框架参考手册(4.2.6版本)翻译——第三部分 核心技术 6.10 类路径扫描和被管理的组件
  • 原文地址:https://www.cnblogs.com/final/p/5348350.html
Copyright © 2011-2022 走看看