Java 技巧:编写批处理文件自动编译.java文件-阿里云开发者社区

开发者社区> 技术小阿哥> 正文

Java 技巧:编写批处理文件自动编译.java文件

简介:
+关注继续查看

 最近经常要使用 Tomcat服务器写一些简单的 Java Web 代码,我的机器内存才1G,运行 MyEclipse 时太卡太慢,所以多用纯文本环境(Editplus) 加命令行控制台。但一个部署到 Tomcat 中的完整 Java Web 应用对各种文件(夹)是有严格要求的,例如对.java源文件编译后的 .class 文件一定要放在对应的 classes 文件夹中。

 
麻烦的问题?
例如,每次都在命令行控制符下用 set classpath=… 设置环境变量,再用 javac –d [编译后.class文件的存放路径] 命令编译并将生成的 .class 文件放到指定的目录中。这是很繁琐、很机械的一个操作。
 
怎么办?
此时可以编写一个 .bat 批处理文件来获得解脱。新建一个 .txt 文件并敲入下面的代码:

  1. set CLASSPATH=F:\study\mylib\myjar.jar;%CLASSPATH%; 
  2.  
  3. javac -d F:\mywebapp\WEB-INF\classes %1 
  4.  
  5. pause 
 
什么意思?

相信大家都对上面3行的作用都很容易理解,第一行先是设置 CLASSPATH 环境变量,而用分号 ; 隔开后面的 %CLASSPATH% 是已经设置好的系统变量,重要的是前面部分特定于某个应用需要用到的 CLASSPATH,其实就是一些 .jar 包的引入。第二行使用 javac –d命令附加将要存放编译生成的 .class 文件的路径,在 Java web 应用中常见的就是mywebapp\WEB-INF\classes 目录了。第二行末尾的一个 %1 的用意稍后再讲。

 
怎么使用?

将该 .txt 文件另存为 JavaCompiler.bat 批处理文件,以后你只要将想编译的 .java 源文件拖动到该 .bat 文件的图标上面就会帮你自动编译,并将生成的 .class 文件按照上面第二行 –d 参数保存到指定的目录下。

 

上面第二行中末尾的 %1 其实就是一个参数,即被你拖动过来的文件名,而 pause 则用于在运行完该 .bat 文件之后让控制台暂停,以便我们查看编译时产生的信息。

 
使用效果图:

 
再来一张编译出错的截图:



本文转自 xxxx66yyyy 51CTO博客,原文链接:http://blog.51cto.com/haolloyin/440353,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
批处理bat文件的写作教程及实例
怎么写批处理bat文件echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令。echo 表示显示此命令后的字符 echo off 表示在此语句后所有运行的命令都不显示命令行本身 @与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。
774 0
Java 文件上传下载管理器(控制台)
Java 文件上传下载管理器(控制台)
2738 0
产品百科 | RTC Android SDK 播放音效文件的接口方法
阿里云 RTC SDK 为您提供伴奏文件和音效文件的相关接口方法,您可以通过本文了解其具体的实现方法。
69 0
13694
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载