MonthJuly 2012

解决Eclipse 3.7.2升级到4.2带来的开发环境迁移问题

摘要:本人原来的Eclipse版本是3.7.2,主要做Android开发,今天准备装个Maven插件编译Github Android客户端看看的,结果死活装不上,遇上了各种问题,果断下了个Eclipse 4.2,试了下M2E,发现完全没问题了,但就是升级Eclipse需要重装Android Development Tools , AnyEditor , ColorTheme等等一堆插件,还有配置,很是觉得麻烦,果断搜了下,Stackoverflow上还是有更好的方法的,不过仅限于3.7以上,简单说一下。

 

  • 下载安装Eclipse 4.2

下载地址:http://download.eclipse.org/eclipse/downloads/drops4/R-4.2-201206081400/,记得不要覆盖了旧的Eclipse版本

 

  • 从旧版本的Eclipse中导入Plugins

选择 File -> Import –> Install -> From existing Installation

image

指向你的旧版本Eclipse,我这里是指向我的Eclipse 3.7.2(图为我导入以后的样子….)

image

  • 最后

还是要记得把Workspace指向以前的Workspace,就可以无缝切换到新的Eclipse了,Enjoy your coding~~

解决Android开发团队代码版本控制中由编码风格不同造成的代码修订混乱

摘要:不知道大家在版本控制中有没有碰到这种情况,某一个文件新push到代码服务器上的修订很大,几乎是全部的代码出现了修改,看了一遍发现原来是由于协作的人之间编码风格不同,其实真实改动就是改了那么一两行,这就影响了了解真正的代码修订,同时是代码修订历史成了摆设。因为马上有实习生进团队,估计很快又会碰到这种问题,本文就是讲我们团队是如何利用Eclipse的工具解决上面的问题的。

 

  • 统一代码风格 — Android Code Style Guidelines For Contributors

首先,统一的代码风格是一个团队协作开发的好习惯,Android Open Source Project 提供了官方的Strict Android Code Style Guidelines For Contributors,和Android的源码要求一样,非常适合做Code Style规定。

 

  • 统一代码格式 — Eclipse Formatter

1. 在Eclipse的Preferences中,找到Java —> Code Style —> Formatterimage

2. 编辑一个新的Profile,在里面按照团队的代码格式编辑,这里我们编辑了“方法首行空行”等,主要是让代码好看一些,编辑好了以后Export出来作为一个xml文件。

image

3. 将这个format的xml发给团队的其他开发者,导入Java —> Code Style —> Formatter,以后只要在Eclipse里Ctrl+Shift+F,就能统一代码格式了。

image

 

  • 统一Imports的顺序

    在Java —> Code Style —> Organize Imports里,可以设置Imports的顺序,和Formatter一样,确定顺序后
      导出后缀为.importorder的文件,发给团队的人员,统一导入。

     

    • 利用Eclipse的Save Action保证规范能应用到代码上

      当然,上面的规范很可能开发过程中忘记Format,就依然会造成摘要里提到的问题,我们可以用Eclipse的
        Save Action,把Format source code & Organize Imports勾上,保存的时候会自动做上面两件事了。

      image

       

      • 最后,利用AnyEditor解决Win&Linux下Tab的空格个数问题

      在Win & Linux下Tab的空格个数不同是个老生常谈了,这也会影响代码提交的修订,修正这个问题需要借助Eclipse的AnyEditor插件(Download),虽然这个比较细节了,但注意下总是好的。

      做法的话,就是记得再提交代码前,将Tab用AnyEditor转换成Spaces

      image

       

              暂时就想到这么多了,从我自己的实践来看,这些做法能让开发团队无论用Svn,Git还是Hg来版本控制,都能保持一个比较好看的ChangeSet记录。