第三篇 打造JAVA开发环境——EditPlus篇

《打造JAVA开发环境——EditPlus篇》是 打造全能的文本编辑器序列 的第三篇。介绍了在EditPlus中集成Java编译器、Java运行工具、Ant工具、Tomcat服务器、getter和setter方法生成器“插件”等内容。

笔者polaris一直在做JAVA开发,因而,对于个人常用编辑器,都会介绍如何打造jAVA开发环境。如果您是非JAVA程序员,一样能够参照着很方便地配置一个适合您的开发环境。下面让我们开始使用EditPlus搭建JAVA开发环境。

其实在文章《EditPlus使用技巧集萃》中已经介绍了如何在EditPlus中集成编译运行程序(包括多种语言的),在此稍微再重复一下。

EditPlus其实没有实际意义上的插件,它通过调用外部工具来达到扩展的目的,这就是工具的集成。操作是:通过《工具》菜单——《配置用户工具》来实现(最新版本3.2)。具体配置选项如图:
EditPlus
具体设置步骤:
① 设置组名称,这里也可以不设置
② 单击“添加工具→应用程序”按钮并进行如下设置
③ 各种类似”$(FilePath)”的参数可以在文本框右侧的箭头下拉菜单中获取,具体含义如下:
┌──────────────────────────────────┐
│参数 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 描述 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?│
├──────────────────────────────────┤
│$(FilePath) 文件路径(文件全名,含目录和文件名)│
├──────────────────────────────────┤
│$(FileDir) ? ? ? ? ? ? ? ? 文件目录(不带文件名) ? ? ? ? ? ? ? ? │
├──────────────────────────────────┤
│$(FileName) ? ? ? ? ? ? ? ?文件名(不带目录) ? ? ? ? ? ? ? ? ? ? │
├──────────────────────────────────┤
│$(FileNameNoExt) 不带扩展名的文件名(不带目录) │
├──────────────────────────────────┤
│$(FileExt) ? ? ? ? ? ? ? ? ? ? ? 扩展名(当前文件) ? ? ? ? ? ? ? ? ? ?│
├──────────────────────────────────┤
│$(ProjectName) ? ? ? ? ? ? 工程名称(当前工程名) ? ? ? │
├──────────────────────────────────┤
│$(CurLine) ? ? ? ? ? ? ? 当前行号(光标位置处的行号) ? ?│
├──────────────────────────────────┤
│$(CurCol) ? ? ? ? ? ? ? ?当前列号(光标位置处的列号) ? ? │
├──────────────────────────────────┤
│$(CurSel) ? ? ? ? ? ? ? ? ? ?当前文本(插入当前选定文本) │
├──────────────────────────────────┤
│$(CurWord) ? ? ? ? ? ? ? ? ? ?当前单词(插入当前单词) ? ? │
├──────────────────────────────────┤
│$(WindowList) ? ? 显示当前窗口列表并选择特定文件 │
└──────────────────────────────────┘
先秀一下polaris的EditPlus,呵呵:
EditPlus
还算漂亮吧。

1 集成Java编译器

菜单文本:Java 编译器
命令:c:\java\bin\javac.exe
参数:$(FilePath)
初始目录:$(FileDir)
捕获输出:选中

如图:
EditPlus
(polaris定义了一个组名,EditPlus可以集成大量外部工具,且允许对它们进行分组)

感谢dofy提醒:$(FilePath) 两边最好加上双引号, 否则如果路径有空格就执行不了了

2 集成Java运行工具

要运行已编译的 Java 类文件,你可以进行如下设置:
菜单文本:Java
命令:c:\java\bin\java.exe
参数:$(FileNameNoExt)
初始目录:$(FileDir)
捕获输出:选中

如图:
EditPlus
注意“参数”与配Java编译器的不同。

注意:“命令”部分应当替换为您实际的 Java 解释器的路径。如果您配置了JAVA_HOME与PATH变量,直接输入javac或java就可以了,不需要完整路径。

EditPlus有一个地方做的比较好,就是在编译或运行后出现了错误,在输出窗口中,双击错误会定位到源代码处。不过有时候定位不了,比如JAVA API的类等。但相比其他同类软件,EditPlus还是做的挺好的。

另外,上面方法实际上只能编译运行没有包名的类。我尝试过很多方法,想让其能够编译运行带包的类,如:编译时加入”-d”参数,然而运行时候会很麻烦,我通过写一个BAT脚本来进行,这当然很不好,所以在此就不详细介绍。大家有兴趣可以自己研究有没有其他方法,有什么好的方法留言分享一下。

3 集成Ant工具,打造真正的JAVA环境

由于编译与运行经常使用,因而将这两项功能单独集成,集成方式跟集成Java工具一样。如图:
EditPlus
运行:
EditPlus
既然使用了ant,当然会有其他众多task,比如打jar包、war包、生成javadoc等。这个时候可以进行如下配置:
菜文本:ant其他目标
命令:D:\Program Files\apache-ant-1.8.1\bin\ant.bat -f
参数:$(FilePath) $(Prompt)
初始目录:$(FileDir)
捕获输出:选中

如图:
EditPlus
当写好build.xml文件后,在打开的情况下(且是当前活动的文档)执行“工具”——“ant其他目标”(您可以自定义快捷方式,默认也会提供快捷方式),这时会出现如下对话框:
EditPlus
在输入框中输入想要执行的目标task,即可达到相应的目的。这样,就可以通过EditPlus达到构建工程的目的。

4 集成Tomcat服务器

集成Tomcat服务器很简单,其实只是调用一个外部工具而已。如图:
EditPlus
注意选中“隐藏运行”,要不然EditPlus输出窗口会一直等待Tomcat停止运行,“工具”菜单栏中的其他自定义工具也无法使用了。

5 getter和setter方法生成器“插件”

“插件”之所以打上引号,之前说过,EditPlus没有真正意义上的插件,这里只是通过其提供的调用外部工具来实现的。

这个功能不是polaris自己实现的,网上有人实现了。在这里引用一下,在原文基础上有修改:(由于该文很多地方引用了,不知道原地址与原作者,有如侵权,请告知;同时,由于原文代码有点长,两个代码文件提供下载,在文中不贴出来了。)

一直很不习惯用Eclipse,觉得那家伙功能太花哨又笨重。还是喜欢用EditPlus手写,几乎平时的开发都用EditPlus,但有时又需要借助Eclipse生成JavaBean的get、set方法。那现在自己写一个JavaBean代码生成器插件,在EditPlus里调用。

首先是编写 BeanGenerator.java类

然后是 BeanInfo.java类

完成之后,编译打成可运行的jar包(不会打包的可以上网搜索或留言),推荐将该JAR包放入EditPlus根目录的plugins目录中(没有plugins目录,可以自己创建)。

接下来需要配置CLASSPATH环境变量,如图:
EditPlus
注意,在配置该变量时,记得在最前面加上“.;”,否则命令行方式运行java命令会抛异常:找不到类。具体原因可以参考《Java环境变量配置问题》

下面便是将其集成到EditPlus中来:

配置完之后,在“工具”菜单中就出现了相应的子菜单(BeanGenerator):
EditPlus
这时,可以写一个简单的JavaBean测试一下:
EditPlus
执行BeanGenerator,或按快捷键,生成的getter、setter方法如图:
EditPlus
(注:上面两个类你可以自行修改,以符合你的习惯,如大括号的缩进方式等,polaris的跟原作者的就略有不同。)

至此,插件的编写与配置全部完成。

有一点提醒一下,上面两个类的编码方式是GB2312,所以,您要生成Bean的文件也应该为GB2312编码。当然你可以换用其他编码,不过两者要一样,否则生成的注释会乱码。

6 总结

就我个人而言,觉得EditPlus在很多方面都很优秀。通过上面的配置,EditPlus已经变成一个类IDE了。就编程而言,EditPlus提供了众多且很优秀的语法高亮的功能(在官网上几乎可以下载到所有你想要的语法高亮文件,或者你可以自己定义,见《第二篇 简洁但功能强大的EditPlus——我的最爱》之 第四部分——自定义语法文件),在这方面,我觉得远远超过UltraEdit,UltraEdit支持的语法高亮不是很好,比如XML(Ant的);然而,有几个方面,我认为EditPlus不是太好:

(1)不支持代码提示功能,代码自动完成功能也很弱;
(2)没法很好的对文本文件(Text)进行语法高亮。我曾试过自己定义Text的语法高亮文件,但效果很不理想。这让我不是很爽,而Vim有一个插件使其有该功能;
(3)不能在程序中跳转。大部分的文本编辑器都没有提供该功能,有些文本编辑器提供了,后面会有介绍。

由于存在这些问题,有必要寻找一款在这些方面做得更好的编辑器来补充EditPlus。在写此文时,我已经找到了一款能够大概满足我要求的,当然不是指Vim,Vim几乎可以满足以上一切要求,然而学习起来不容易,需要长期实践才能够很好的掌握,或者您不想花很多时间学习。那么这款软件到底是啥?之后的文章会详细介绍。

附:JavaBean代码文件及polaris编译打包好了的jar,请点击此处下载(在文章最后)

《第三篇 打造JAVA开发环境——EditPlus篇》有50个想法

  1. 哈 介绍得真详细啊 😀
    有个细节要补充一下: $(FilePath) 两边最好加上双引号, 否则如果路径有空格就执行不了了

  2. 如果是java开发,我还是偏向于用专门的IDE,
    Ecllipse或者NetBeans,整个都集成了,在知道java的开发和编译原理后,用专门IDE有助于快速开发产品。

    1. 专门的IDE肯定是必须的,只是有些时候用IDE有点……比如我就是想测试一个小功能,启动Eclipse之类的确实有点慢,这个时候用小工具就很方便。对于大项目之类的,肯定是需要用专门的IDE的。

  3. 感觉开发java的还是用Eclipse这样的IDE最强大,各种补全,高亮,根据语义的着色什么的都是做的最好的,对于开发很有帮助。
    不过这样的方法的确是把EditPlus打造成一个通用方案的办法,我当年就是在老师压迫下用TC写程序时配置了一个这样的环境来写C,因为要用到那个Borland的图形库。

  4. 已经到博客看过EmEditor的介绍了,试用中

    不知如何快速格式化c代码?notepad++有textfx,不知EmEditor如何实现?

    1. 代码格式化好像没有插件可以,不过可以试试SourceFormatX,这个可以被集成到EditPlus、EmEditor等之类的编辑器中(通过调用外界程序的方式)。

  5. 记得以前xbeta说过他写博客时候总会用Irfan处理一下图片(去色),这样图片就小了,打开网页速度就快了。
    这篇的配图十分精美,就是有点大,我能明显看到加载图片的过程。

    1. 图片本身不是太大,可能是我的空间太差,这上面的图片是从我的博客上链接过来的,太多,没有一个个上传到xbeta.info上。

  6. 博主好!我也用过EditPlus配置过Java环境,基本上编译和运行没有问题,而且也配置过Latex没有问题,EP确实很好用

    但是,在Java时有个问题:就是args[0]与java交互数据时,Ep无法提供输入参数的窗口,而且选择不捕获输出时,直接在Dos下也没有,很奇怪。不知道博主有没有遇到过

  7. 博主好,emeditor有个插件,可以显示大纲,特别是文档很长的时候非常方便
    请问EditPlus有这样的功能吗?

  8. 以前一直用的……直到一次在中文环境下编辑中文文本文件出现乱码……

    说到编码方面的话….还是日产的软件比较好…..

  9. 标题改成《打造JAVA学习环境》可能更合适点。Editplus加上自定义的命令和一些重定向用来学完《thinking in Java》是够了。但是要做为实际项目的IDE还需要大量的hack。

  10. 对于需要快速开发的人来说,ide还是比较适合的。
    比如说我需要快速定位到该方法的接口或者实现
    再比如说我要查看某个类都有什么方法,都需要什么参数,类型都是什么。。。

    别和我说,都知道了,一般不看,我还没到那境界。。。

  11. 初学java ,感觉用editplus+jdk很适合想我这样的初学者,但是在设置BeanGenerator工具时不知道该怎么设置,请补张图吧! 谢谢!

  12. 谢谢楼主分享,
    我用的是日文版win7,安装了EditPlus3的英文版,
    按照楼主的说明关联JAVA jdk后,编译的结果总是不能正常显示,
    有很多 小方块 样的乱码,完全不能看懂是什么错误了。

    还有,楼主的界面好漂亮啊,调了好久也调不出来,能分享下配置文件吗!?:)

  13. 一直用Eclipse。
    EditPlus也好,UltraEdit也好。这种文本工具再强大,和IDE毕竟有很多差距。简单文本编辑notepad就够,又快又省

  14. 你好,楼主,我是新手刚开始学java,要配置文本编辑,但是一般来说只要有了编辑和运行java那两个就可以运行程序了,我不太清楚ant和上面一些其他的工具作用,查了下觉得说的很乱,还有就是我没办法设置比如ctrl+1为编辑+2为运行的快捷键。好像只能用ctrl+1,每次编辑运行都得在ctrl+1上切换,到底怎么回事啊?

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据