Sublime配置java运行环境

主博客里有Sublime的安装以及Sublime其他环境配置

文章目录

    • 4. Sublime配置java运行环境
      • 4.1 java jdk配置环境
      • 4.2 Sublime里配置java(两种方法,可以都配一下)
        • 4.2.1 自己新建一个编译系统Java.sublime-build
        • 4.2.2 修改默认的JavaC编译系统中的配置文件并添加脚本runJava.bat

4. Sublime配置java运行环境

4.1 java jdk配置环境

本来这一步不想说的,但是好久没用忘了加什么路径搜了一下教程,发现都写的好迷啊,所以这一步还是说一下吧
官网(应该是这个吧)下载jdk
在这里插入图片描述
下载第一个SE就可以了,要是不想版本这么新那可以去下面下旧的
配置环境的话,其实很简单的只要加一条就可以了,不知道为啥我搜出来的教程都加了不止一条,并且还新建一个自己命名的再加到path里去,绕了一大圈都看晕了,比如下面这样子的就很迷:
在这里插入图片描述
记得加在系统变量的path里,只要加jdk安装后的bin的路径就可以了
在这里插入图片描述
在这里插入图片描述
理论上现在安装完jdk他会自己添加来着,但这里我还是手动添加的
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
测试了一下,jdk配置好了

4.2 Sublime里配置java(两种方法,可以都配一下)

一般来说有两种方法(各有优缺点吧,可以都配一下)

  • 自己新建一个可以在控制台cmd里运行的编译系统
  • 修改默认的JavaC编译系统中的配置文件

经过几番测试我才算搞懂了这之间的关系,和上面jdk在cmd里的测试是一个道理,首先要编译,然后是运行,cmd里运行后才可以有输入/输出的交互。所以光新建一个在控制台运行的编译系统的话不能达到每次运行他都自动线重新编译再运行的效果,也就是每次还是要先选编译(对应下面图里的Java)再选运行(对应下面图里的Java-Run),比较麻烦。所以可以修改默认的JavaC编译系统中的配置文件,并在里面加上运行一个脚本runJava.bat(后面详细说)最后达到每次运行(Ctrl + B)都自己重新编译再运行的效果。
在这里插入图片描述

4.2.1 自己新建一个编译系统Java.sublime-build

这个是新建一个在控制台运行的编译系统的方法,最后先编译再运行可以在cmd控制台里运行,并且有输入/输出的交互,有点就是可以输入,缺点就是每一次都要手动先编译。
选择tools - build system - new build system复制以下代码并保存,命名为Java.sublime-build(为了和sublime自带的JavaC.sublime-build区分开)

1
2
3
4
5
6
7
8
9
10
11
12
13
{
    "cmd": ["javac", "-encoding", "UTF-8", "-d", ".", "$file"],
    "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
    "selector": "source.java",
    "encoding": "GBK",
    "variants": [{
        "name": "Run",
        "shell": true,
        "cmd": ["start", "cmd", "/c", "java ${file_base_name} &echo. & pause"],
        "working_dir": "${file_path}",
        "encoding": "GBK"
    }]
}

这个Java.sublime-build文件如果想要修改的话,可以通过再次tools - build system - new build system新建一个编译系统文件然后点另存为找到它存储的路径,它默认的存储位置都是一样的。
运行时要先选Java编译,再选择Java - Run,然后就可以在cmd里输入/输出了
在这里插入图片描述
在这里插入图片描述

4.2.2 修改默认的JavaC编译系统中的配置文件并添加脚本runJava.bat

以下步骤主要参考了Sublime配置java运行环境和sublime text 配置Java环境
因为每次运行java文件都和4.2.1一样手动先编译再运行好麻烦啊,还是想Ctrl+B他自动先编译再运行
1.runJava.bat脚本,先创建txt把下面的代码复制进去然后把txt改名为runJava.bat,再将该文件复制到JDK的bin目录下

1
2
3
4
5
6
7
8
9
10
11
@echo off
cd %~dp1
echo Compiling %~nx1......
if exist %~n1.class (
 del %~n1.class
)
javac %~nx1
if exist %~n1.class (
 echo ------Output------
 java %~n1
)

在JDK的bin目录添加好runJava.bat后在sublime里运行java文件并无输出,因为此时默认使用的编译系统是sublime text里的JavaC。如下图Ctrl + Shift +B可选就是JavaC,如果先做了4.2.1这步的话还会有4.2.1图里的Java和Java-Run两个选项)
在这里插入图片描述
2.打开Sublime Text 3的安装目录,找到Package目录下的Java.sublime-package,直接通过压缩软件解压缩打开,打开里面的JavaC.sublime-build文件
在这里插入图片描述
将JavaC.sublime-build修改为以下内容并保存(覆盖保存),这是一个json格式的配置文件。其中"shell_cmd"选项的值相当于在cmd命令行中输入runJava.bat 文件名

1
2
3
4
5
6
{
 "shell_cmd": "runJava.bat "$file"",
 "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
 "selector": "source.java",
 "encoding": "UTF-8"
}

然后就可以在sublime里面运行java文件了,Ctrl + B(这里默认选的是JavaC,如果上一次用的不是JavaC的话要重新Ctrl + Shift +B选一下JavaC之后他就会一直默认JavaC了)就可以运行了,可以看到成功输出了,中文也不会乱码的,当然缺点就是无法输入
在这里插入图片描述
在这里插入图片描述
这里还是使用的上面配置的JavaC运行的,因为这段代码有从键盘输入的要求,运行后他就卡在这里了,无法输入也无法结束程序,当然也没有弹出cmd窗口,这就是这样配置的缺点吧,当然如果是写算法题,可以把数据直接写在代码里然后运行,也省的每次输入。
如果4.2.1和4.2.2两种都配置了的话,这里想要有交互那就换Java编译在Java - Run运行,就会弹出cmd窗口了,如下
在这里插入图片描述