【Make My Eclipse】之 使用正确的插件

  此次升级到eclipse到juno版本,趁机整理了经常使用的eclipse plugin,目标是为了让开发人员尽量把工做环境集中在eclipse上,而不用打开各式各样的文档编辑器或一堆其余别的软件。因为开发过程当中每一个团队使用的软件各不相同,所以本文更多的是一个在eclipse集成思路,不一样团队能够根据本身的须要集成与本文不一样的插件。java

     这里先说明本团队的开发集成环境mysql

版本控制:egitlinux

aop(部分):aspectjgit

项目控制:mavenweb

bug管理:jiraspring

web中间件:tomcatsql

中间件热布署增强:jrebelmongodb

关系数据库:MySQLshell

NoSQL:MongoDB数据库

页面实现:FreeMarker

主体框架:Spring+Struts

集成发布:jenkins

 

其余项目属性及目标:

字符集:UTF-8

目标1:代码快速生成Spring+Struts

目标2:集成连接jenkins、jira,在eclipse即时管理bug,修复bug;在eclipse即时集成发布。

目标3:在eclipse里完成数据库设计,连接数据库及相关数据操做。

目标4:快速生成测试框架代码,持续集成测试(这个目标暂列未实现)

 

 

1、版本控制,egit - http://download.eclipse.org/egit/updates

   git使用相对比较复杂,guide:http://wiki.eclipse.org/EGit/User_Guide

   (之因此把egit放在第一个位置,是由于在安装的过程当中走了弯路:   在实际操做时随意安装了一些插件后,再安装egit plugin时,安装过程没有任何问题,但在eclipse界面里,egit怎么也出不来。无奈只好再次打开一个刚下载干净的eclipse,此次第一个先安装egit插件,问题解决。)为了避免浪费时间,仍是乖乖的第一个先装egit插件吧,虽然可能其余人不会出现这样的问题。

 

2、aop实现,ajdt aspectj插件

 

3、maven项目控制,m2eclipse maven插件

 

4、bug管理跟踪,jira plugin 链接jira插件(也能够在mylyn connector discovery下安装)

 

升级到juno并安装上述四步后先导入工程

导入后pom.xml出错

一、工程报错,须要依赖tools.jar 1.5版本,这跟eclipse升级后的启动初始有关系,解决办法:修改eclipse.ini文件,在-vmarg以前加上-vm

D:\java\jdk1.6.0_17\bin

重起eclipse发现问题获得解决,固然直接用命令的方式eclipse -vm "D:\java\jdk1.6.0_17\bin"也是同样的。另一种办法就是在pom.xml文件加上这个依赖包。

二、升级m2eclipse版本后,对如下语句不能编译经过

   <executions>

          <execution>

             <id>compile and test-compile</id>

             <goals>

               <goal>compile</goal>

               <goal>test-compile</goal>

             </goals>

          </execution>

      </executions>

用如下办法解决:

Preferences->Maven->Discovery->Open Catalog选择安装m2e wtp。安装后根据错误提示,点击肯定会自动加上一些m2e配置片断。

而后maven->update project,错误消失。

 

都正常后,把工程置为maven、aspect,正常链接git和jira,一切都正常了。接下来装tomcat插件

 

 

5、热布署,jrebel http://zeroturnaround.com/software/jrebel/eclipse-jrebel-tutorial/

 

6、tomcatplugin

 

7、shell and folder plugin 能够快捷打开window cmd、linux和unix的terminal,快捷定位到文件的位置

       http://openextern.googlecode.com/svn/trunk/openextern_update/

      安装这个插件,能够经过这个插件打开的命令窗口并定位到目录。在咱们的开发习惯里,自带的m2eclipse及egit插件与命令行相比,仍是有要弱不少,所以在工做过程当中,能够利用此插件,快速打开命令窗口并定位到要操做的目录。为了方便起见,先把mvn及git执行

     目录先设置到环境变量PATH里,这样在定位到目录后可直接执行命令。能够省下很多上下文操做时间。

 

8、UTF-8编辑器,propertiese editor plugin

 

9、Spring+Struts代码快速生成,fast-code for spring plugin  http://sourceforge.net/projects/fast- code/files/update/

      fastcode必定要注意其命名规则,以前的dao命名都被命名成XxxDao,而fastcode默认为XxxDAO,到fastcode配置里把默认的都改为DAO改为Dao,就咱们的项目业务层,主要启用

   一、pojo生成,若是数据库使用mysql、oracle、postgresQL等关系型数据库,能够配置数据库连接,自动生成pojo;

      生成的java文件命名为TablenamePOJO.java,想改为直接命名Tablename.java,但找不到配置,只得生成

      TablenamePOJO.java后再重命名成Tablename.java。

   二、建立dao接口及实现类,一般关系型数据库与NoSQL数据库的父类BaseDao会分开写,所以这里继续哪一个Dao须要在开发过程当中自行设置。

      Dao命名按命名规则,中间字母不要出现大写。

      这里关系型数据库MySQL时Code In the Class(Body)配置,如下代码样例

 

Java代码
      private static final Table T = new Table(
			"${input.toLowerCase()}",
			"",// to fill primary key,if composite key,use String[]
			new String[] {
                         /* developer to fill data column */
			}
	);
	
	public static final ParameterizedRowMapper<${input}> map = new ParameterizedRowMapper<${input}>() {
		public ${input} mapRow(ResultSet rs, int rowNum) throws SQLException {
			${input} entity = new ${input}();
			/* developer to set properties */
			return entity;
		}
};

public ${input} get(String uuid){
    return getJdbcTemplate().queryForObject(T.buildSqlSelect(" uuid = ? "),
				map,
				uuid
		);
}

public void insert(${input} ${input.toLowerCase()}) {

			getJdbcTemplate().update(T.getSqlInsert()/* developer to fill entity.getColumn*/);
}

public void update(${input} ${input.toLowerCase()}) {

			getJdbcTemplate().update(T.getSqlUpdate()/* developer to fill entity.getColumn,last parameter is primary key*/);
}

public void delete(String uuid) {
		getJdbcTemplate().update(T.buildSqlDelete("uuid = ?"), uuid);
}

public Result<${input}> getResult(/** to fill other parameters **/ int offset,int limit){
	return null;
}

  

   MongoDB使用如下配置

 

Java代码 

   

public ${input} get(String uuid){
    return super.get(uuid);
}

public void save${input}(${input} ${input.toLowerCase()}) {

			super.save(${input.toLowerCase()});
}
public void delete(String uuid) {
		super.deleteByQuery(createQuery().filter("uuid", uuid));
}

public Result<${input}> getResult(/** to fill other parameters **/ int offset,int limit){
	return null;
}

  

 

    这些代码只生成在DaoImpl.java里,Dao接口自己不能产生以上接口,还得花几秒钟的时间把以上代码拷到Dao接口代码里,

   而后Ctrl+F 输入Find:\)[\s]*\{[^\}]*\} Replace with: );点Replace All,这样在接口里就有这5个默认的接口了。

   若是须要其余接口和实现,开发人员再自行新增。

 

   三、生成类似类,类似类从Dao接口生成Service接口及ServiceImpl

   四、从service生成action,默认是生成handler,修改配置后让忽略handler命名,直接生成action

   五、若是手动建立了dao接口,能够利用Create Similar Preference Different Name生成Dao实现类。(默认只能Dao接口生成对应的implements对象)

   六、插件还能够生成测试框架代码,使用过程当中有点问题,暂不支持。

 

 

 

10、freemarker plugin 在marketplace搜索freemarker,安装JBoss Tools(Indigo);很是庞大,选中其中的freemarker ide安装便可。

 

11、Hundson/Jenkins 

    mylyn的一个connector,安装的时候从mylyn connector discovery进入安装,但这个搜索很是不稳定,10次里只有一两次成功。

    mylyn把connector分红task repository、team repository。Hundson/Jenkins connector属于team repository。安装成功,不能经过

    Validate校验。缘由是hundson connector对Jenkins 1.447以后的版本支持存在bug。目前只有一种解决办法把jenkins退回到1.447版本。

    另外新装的jenkins有几个插件必须装上

    Jenkins GIT plugin

    Deploy to container Plugin

    还有相关的SSH插件分不清是哪一个,是SSH都勾上装了

 

12、MonjaDB -- mongodb client plugin

 

十3、Database Designer(未破解)

有了这两个数据库客户端插件,能够考虑不用安装数据库客户端软件,也能够直接用于设计关系型数据库,进一步脱离像powerdesigner及UML之类的软件。由于eclipse能够基于Windows、Mac及其余Linux操做系统,这样能够很好的移植开发环境。

 

十4、更炫的风格选择,Eclipse Color Theme Plugin

 

十5、一直想找个email收发的插件,只有一个for outlook,且受限于操做系统平台而且是商用的。

    附foxmail设置若是使用foxmail能够在系统设置里,设置成自动启动;关闭时最小化到托盘区,不退出,这样邮箱在外关上不占界面显示。

    另外在邮箱账号属性->服务器 默认设置 每隔15分钟自动收取新邮件。时间间隔能够置更长或更短,这样可让邮箱来通知开发者是否有其余新任务。

    最后若是你想对某些邮件作自动回复,能够在过滤器里帮设置。

 

转自:http://truemylife.iteye.com/blog/1668919

相关文章
相关标签/搜索