[Sublime-Text] Linux下用Sublime-Text3编译输出Java文件
因为现在在借着经典的书籍巩固一些基础知识,所以会经常跑一些简单的程序,可又不想开庞大的IDE。所以就想试着用Sublime-Text来编译程序,哦,当然如果习惯的话,用 terminal 也可以。其实Sublime-Text里有编译功能,ctrl+B 即可,但编译后只是生成了 .class 文件,并没有执行,也就看不到结果。针对这一情况,需要一些配置文件的修改。我在网上查了一些方法,发现没有能用的,自己大概摸索了一下,找到了一个解决方法。当然,这个方法是以对付 JAVA 来做的,当然稍做修改也可以用来对付其他的语言。下面讲讲我理解的原理。
本文地址:http://www.cnblogs.com/rossoneri/p/4378339.html
在 Sublime-Text 的文件夹下有一个 Packages 文件夹,里面有很多针对各种语言的工具包。对付 JAVA 就需要打开 Java.sublime-package 。不用解压,直接打开文件 JavaC.sublime-build 。ctrl + B 编译就是通过这个文件执行的,可以看到内容是:
- {
- "shell_cmd": "javac \"$file\"",
- "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
- "selector": "source.java"
- }
难怪,编译的时候只执行了 javac ,所以只是生成 .class 文件。那我们现在需要执行文件得到结果,就需要从这一行命令入手。
打开 jdk 目录下的 /bin 。对,就是 javac 所在的目录,在里面我们新建一个脚本 runJava.sh :
- #!/bin/bash
- [ -f "$1.class" ] && rm $.class
- for file in $
- do
- echo "-Compiling $file.java ..."
- javac $file.java
- done
- if [ -f "$1.class" ]
- then
- echo "------Output------"
- java $
- else
- echo " "
- fi
记得 chmod 777 ( 自己的环境权限设成 777 无所谓,不行就 755 ,反正必须可执行)
脚本的意思是 有一个文件 test.java ,获取其文件名 test 做参数, test.class 存在就将其删掉重新编译,编译成功就执行。(注意不要乱删空格)
然后注销计算机,重新登录,在终端输入 runJava.sh 命令是否存在( 其实只要系统能找到这个文件放哪都行,放 jdk 只是因为 jdk 安装后都会配置其环境,比较省事儿)
之后就修改 JavaC.sublime-build 文件,将第一行改成:
- "shell_cmd": "runJava.sh \"$file_base_name\"",
把 javac 换成新加的命令,后面文件名, $file 代表 test.java,$file_base_name 代表 test,明显,我们的命令需要后者为输入。
修改后保存,重启 Sublime-Text ,让其重新加载修改后的工具包。打开文件, ctrl + B 即可看到输出。
[Sublime-Text] Linux下用Sublime-Text3编译输出Java文件的更多相关文章
- Sublime Text 3下C/C++开发环境搭建
Sublime Text 3下C/C++开发环境搭建 之前在Linux Mint 17一周使用体验中简单介绍过Sublime Text. 1.Sublime Text 3安装 Ubuntu.Linux ...
- Sublime Text 2下搭建Python环境常见错误
Sublime Text 2下搭建Python环境时,最容易出的错误就是Python环境配置错误,导致build(Ctrl+B)后没有任何反应. 关于Python编程环境的配置,网上很容易搜索到.先默 ...
- 【转】sublime text 2 下的Markdown写作
sublime text 2 下的Markdown写作 作为Windows/Mac/Linux下强大的文本编辑器,st提供了对Markdown语言的支持.通过设置可实现markdown预览和转换功 ...
- 在 Sublime Text 2 下开启 Vim 模式
緣由 由於在 Sublime Text 2 下操作時會想起 Vim 下的鍵盤操作.一時興起在網絡上找了下,發現 Sublime Text 2 是支持類似 Vim 的鍵盤操作的.在此分享下配置過程. 打 ...
- Win7环境下Sublime Text 3下安装NodeJS插件
1.首先下载安装Node.JS,配置好环境变量(安装好Node.JS默认是配置好了环境变量的). 2.Sublime Text 3下安装NodeJS插件. 参考的两篇文章:http://www.cnb ...
- sublime text 3插件改造之添加从模版新增文件到指定目录
简介:以前使用ST2里面的Sublime NFFT插件比较顺手,最近安装了ST3,但是Sublime NFFT插件不支持ST3,就下载了SublimeTmpl从模版新建文件插件.在使用时,习惯在侧边栏 ...
- [转]Caffe在Linux下的安装,编译,实验
Caffe在Linux下的安装,编译,实验 原文地址:http://www.cnblogs.com/evansyang/p/6150118.html 第一部分:Caffe 简介 caffe是有伯克利 ...
- Linux下librdkafka客户端的编译运行
Linux下librdkafka客户端的编译运行 librdkafka是一个开源的Kafka客户端C/C++实现,提供了Kafka生产者.消费者接口. 由于项目需要,我要将Kafka生产者接口封装起来 ...
- 在linux下用命令行编译 java的eclipse项目
由于jdk的版本问题导致在windows上编译打包好的jar包放在linux服务器上运行的时候出现一点小异常,所以决定在linux上进行一次项目编译,这有两个选择1.在相同的linux环境下安装lin ...
随机推荐
- 深入浅出SQL Server中的死锁(实战篇)
简介 死锁的本质是一种僵持状态,是多个主体对于资源的争用而导致的.理解死锁首先需要对死锁所涉及的相关观念有一个理解. 一些基础知识 要理解SQL Server中的死锁,更好的方式是通过类比从更大的面理 ...
- GO入门——3. 控制语句
1 if 条件表达式没有括号 支持一个初始化表达式(可以是并行方式) 左大括号必须和条件语句或else在同一行 支持单行模式 初始化语句中的变量为block级别,同时隐藏外部同名变量 a := 1 i ...
- Kafka中的zookeeper-shell.sh
连接 zookeeper bin/zookeeper-shell. 常用命令 connect host:port get path [watch] ls path [watch] set path d ...
- vue代码上传服务器后背景图片404解决方法
问题:代码上传服务器后,图片404,使用的font-awesome图标也是404 解决办法: 如果你用了vue-cil,那么在build目录下找到utils.js中的ExtractTextPlugin ...
- Linux 变量的使用
目录 1. Shell 脚本规范 2. Shell 脚本执行 3. Shell 脚本变量 3.1 环境变量 3.1.1 自定义环境变量 3.1.2 显示与取消环境变量 3.1.3 环境变量初始化与对应 ...
- 配置Codis-FE(管理界面)
codis所有的配置项可以有两种方式进行管理:通过图形界面进行配置,另外一种通过命令配置. 1.通过配置文件生成codis-fe的启动文件a.通过codis的管理工具完成:/usr/local/cod ...
- MongoDB学习3 $操作符表达式大全及实例
from : http://blog.csdn.net/qq_16313365/article/details/58599253 1.查询和投影 1.1 比较操作符 $eq 语法:{ <fi ...
- SQL Server 笔记
第一章数据库的基本操作: >创建数据库: create database my_db(逻辑名称) on primary ( name='my_db.mdf',(物理名称) filename='F ...
- vue中使用js动画与velocity.js
一:vue中使用js动画 根据上一篇安装animate.css之后 vue中有动画的钩子函数,@before-enter是内容由无到有的时候自动监听触发的函数,函数会接收到参数el,这样可以动态设置样 ...
- 使用netfilter_queue改包笔记
系统:centos 7 准备:安装libnetfilter_queue模块,可以yum安装,也可以网上下载rpm包安装 简介:使用iptables在NAT表上创建DNAT与SNAT规则,对数据包进行转 ...