Sublime Text 2 是我最喜欢用来编码的文本编辑器,如果你尝试使用后相信你也会喜欢上它的。在这篇文章中我们将讨论如何在 Sublime Text 2
中编译和运行 Java 程序。

第一步:设置 Java PATH 变量

这是第一步也是最基本的一步,用来设置编译和运行 Java 程序基本命令如 javac 和 java 的存放路径。

在 Windows 下设置 PATH 路径的步骤:

  1. 右键“我的电脑”
  2. 选择“属性”
  3. 进入高级系统设置
  4. 找到并点击“环境变量”按钮
  5. 进入系统变量并找到 PATH 变量
  6. 粘贴 JDK 的 bin 目录到 PATH 变量值的最后

例如你的 JDK 的 bin 路径是 C:\Program Files\Java\jdk1.6.0_17\bin ,粘贴的效果如下图所示:

第二步:创建批处理或者Shell脚本

要想编译运行Java程序,需要创建一个批处理或者shell脚本

对于 Windows

使用下面代码创建文件runJava.bat

 @ECHO OFF
cd %~dp1
ECHO Compiling %~nx1.......
IF EXIST %~n1.class (
DEL %~n1.class
)
javac %~nx1
IF EXIST %~n1.class (
ECHO -----------OUTPUT-----------
java %~n1
)

(上面这个文件,将编译后的class文件存放在当前目录下,也不支持中文)

或

 @ECHO OFF
cd %~dp1
ECHO %~dp1
ECHO Compiling %~nx1 .......
IF EXIST bin\%~n1.class (
DEL bin\%~n1.class
)
javac -encoding utf-8 -d bin %~nx1
IF EXIST bin\%~n1.class (
ECHO Compiled Ok.
ECHO -----------OUTPUT-----------
java -cp bin %~n1
)

(上面这个文件,将编译后的class文件存放在当前目录下的bin子目录中,并且也支持中文)

将这个文件复制到JDK的bin目录下

第三步: 修改 Javac.sublime-build

按照以下的步骤修改sublime text 2的编译系统脚本。

    1. 在选项卡Preferences > Browse Packages.. 打开sublime的包目录
    2. 转到Java Folder
    3. 打开 JavaC.sublime-build 替换下面的命令行
 "cmd": ["javac", "$file"],

在 Windows 下使用以下命令替换

 "cmd": ["runJava.bat", "$file"],

第四步:现在写个测试程序,使用CTRL+B 运行下试试吧!

可以看到控制台编译并运行了程序

另外,假如在编码中有中文,则通常在编译或运行时出错,如:

这是因为Java配置的编译环境的编码不正确,因为默认的Sublime Text 2的编码是UTF-8。
很简单,解决办法如下:

【解决办法】修改JavaC.sublime-build配置文件,添加如下行,如下图所示:

最后,一定要注意:使用sublime加载java文件时,目录中一定不要包含中文,否则无法加载!!!

在 Sublime Text 2 中编译和运行 Java 程序,以及输出中文出错问题解决办法的更多相关文章

  1. 在sublime Text 3上编写并运行java程序

    参考 首先肯定是安装JDK配置环境变量,这个就不多说了. 第二步下载和安装sublime Text3. 第三步,创建一个批处理文件,命名为runJava.bat,放在JDK的bin下: @ECHO O ...

  2. 创建用于编译和运行Java程序的批处理文件

    创建用于编译和运行Java程序的批处理文件 每次编译或运行Java程序时,都要在DOS命令行中输入很长的javac或java命令,悟空觉得太麻烦,就编写了一个适用于Windows操作系统的批处理文件b ...

  3. 在 Sublime Text 3 中配置编译和运行 Java 程序

    参考网址:http://www.open-open.com/lib/view/open1388105023765.html 1. 设置 java 的 PATH 环境变量 2. 创建批处理或 Shell ...

  4. 【Java】【转】在命令行中编译和运行java

    原文:http://blog.csdn.net/u010900574/article/details/50792353 同时加载编译多个jar包和java文件 在个人平常使用或者当我们把代码部署到Li ...

  5. 在linux命令行中编译和运行java文件

    同时加载编译多个jar包和java文件 在个人平常使用或者当我们把代码部署到linux服务器上的时候,我们经常需要通过命令行编译和运行java文件,网上关于这个的方法大多是通过 javac -cp f ...

  6. 记录5-如何在UltraEdit中编译和运行Java

    1点击“高级”,再点击“工具配置” 2点击“插入”,在“菜单项”名称上输入“编译java程序”,在“命令行”里输入“javac %n%e”,在工作目录上填“%p”. 3切换到“输出”项,选择“输出到列 ...

  7. 使用CMD命令编译和运行Java程序

    对于初学者来说,使用CMD命令(Unix以及类Unix系统采用Termial)来编译和运行Java的好处是让初学者直观地体会到编译(Compile)这一步骤,加深记忆.所谓编译就是将文本文件xxx.j ...

  8. cmd命令行编译和运行java程序报错 NoClassDefFoundError

    首先,当在运行java程序出现这个错误时,首先考虑是不是路径或者未指定正确的包名,例如当运行下面这个文件时: package cn.wgh.socket; public class HelloWorl ...

  9. 在Sublime Text 3中配置编译和运行Java程序

    设置Java的PATH环境变量 在Java的jdk的bin目录下建立新文件runJava.bat 文件内容如下: @echo off cd %~dp1 echo Compiling %~nx1.... ...

随机推荐

  1. jackson 不拼null节点的注解

    http://blog.sina.com.cn/s/blog_544a7be401011url.html ——————————————————————————————————————————————— ...

  2. C++之运行时类型识别RTTI

     C++ Code  12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 ...

  3. < APT 攻击>看起来是 .PPT 附件,竟是 .SCR !!

    趋势科技以前在2013年下半年度目标攻击综合报告里指出,发现了好几起APT攻击-高级持续性渗透攻击 (Advanced Persistent Threat, APT) /目标攻击相关的攻击活动. 趋势 ...

  4. 分页技巧_抽取出公共的分页用的Service方法

    分页技巧_抽取出公共的分页用的Service方法 TopicAction.java ForumAction.java 放在父类中DaoSupport.java DaoSupportImpl.java ...

  5. malloc free, new delete 的异同点

    相同点: 都可以动态的申请并释放内存 不同点: 1. 用法不同 <1> malloc 函数为 void* malloc(size_t size), 用于申请一块长度为 size 字节的内存 ...

  6. jqgrid自动换行

    JQGrid表头自动换行的办法: 如果table的header部分字段太多或字段文字太长需要自动换行时,可尝试如下css. <style type="text/css" me ...

  7. python基础之2

    1.模块 sys模块注意:python文件的文件名一定不能和下面的要导入的模块同名,如:sys_mokuai.py windows下的python3里直接运行: import sys    ----- ...

  8. 四 Android Studio打包EgretApp (热更新)

    官网教程: http://developer.egret.com/cn/github/egret-docs/Native/native/hotUpdate/index.html 和Eclipse一样, ...

  9. json写入到excel表

    1. 拼接返回的json数据 // 拼接需要下载报表的HTML,并返回html;reportHtml(reporttData) { let html = `<html xmlns:o=" ...

  10. webPage logService 日志服务 剥离

    [旧的场景]1.x.a.com指向负载均衡服务器ipL;2.代码所在的应用服务器ipA,ipB,ipC,运行nginx-phpFPM服务,提供2个服务: 2.1.应用服务器ipA,ipB,ipC中we ...