Posts tagged: maven

通过maven做字符替代处理

项目打包的时候,经常会遇到动态生成文件中字符串的要求。 举个例子,android手机项目,打包生成的APK文件,如果世间只有一个分发渠道,比如google android market,那么没关系,我就打一个包,发布就可以了。 但是现在有多个渠道,比如国内的安卓市场,EOE等等,为了能区分用户安装的版本是从哪个渠道来的,需要在分发包中定制一个渠道代号。 当然手工也可以做这件事情,不过,耗费精力而且容易出错。 这里打算用maven配置来实现这个功能。maven中对资源文件有个filter过滤器的配置,可以用于配置对指定文件进行文字替代。使用的是在刚才生成QR二维码图片的简单示例中的maven项目,在此基础上增加示例。    发送文章为PDF   

星期三 六月 9th, 2010 in , | No Comments »

解决maven项目在eclipse中循环构建的问题

在关注m2eclipse集成android的eclipse插件bug中提到了maven项目在eclipse中会出现循环构建的问题。 我订阅了该bug的跟帖邮件,这样有人在这个bug下发表评论,就可以通知到邮件中。上上周吧,已经有人手工解决了这个问题。上周观察了几个人的回复,应该是没有副作用的。 这周按照上面提到的手工解决方法,哈哈,eclipse清静了,不会每改动一个代码,就不停的构建了。 方法很简单,把根目录下的.project文件中的以下部分屏蔽或者删除掉: <buildCommand>     <name>com.android.ide.eclipse.adt.ApkBuilder</name>     <arguments>     </arguments> </buildCommand>    发送文章为PDF   

星期三 六月 2nd, 2010 in , , , | No Comments »

maven集成eclipse android项目办法总结

经过不断的尝试,总结出一个maven项目在eclipse android环境下的集成办法。 集成的复杂性和一些问题的权衡 这个集成办法,最大的问题是比较复杂: eclipse集成了android adt插件; eclipse集成m2eclipse插件; maven使用了android部署的插件——maven android plugin; 为了把maven和eclipse集成起来的eclipse插件——m2eclipse android plugin。 这些插件关联,可以认为是串联,如果出现问题,就会影响整个软件项目。结果就碰到问题了,见关注m2eclipse集成android的eclipse插件bug,这种bug较难解决,因为要解决问题,该插件(m2eclipse-android-plugin)作者要向上游一个一个插件的排查,学习和了解他们的东西。    发送文章为PDF   

星期三 五月 12th, 2010 in , , , | No Comments »

关注m2eclipse集成android的eclipse插件bug

在maven集成eclipse和android adt插件 中提到一个问题,eclipse项目改动后,会无限循环构建。在这里找到出处了: http://code.google.com/p/m2eclipse-android-integration/issues/detail?id=6 是一个bug,目前还在排查中。 问题可能出在android项目构建的时候,改动了某个文件,而这个文件又触发android项目重新构建。 等待作者纠正这个bug。 日志引用解决maven项目在eclipse中循环构建的问题maven集成eclipse android项目办法总结    发送文章为PDF   

星期五 四月 30th, 2010 in , , , , | No Comments »

maven集成eclipse和android adt插件

多个工具集成,会造成很大风险,稍有不慎,就会造成问题。原来希望通过工具节约时间,提高生产效率,却因为不可预期的问题耽误时间。 在[cref 2717]中希望能提高开发的自动化,实现人员角色的分工,但是测试不彻底,android和maven是集成了,但是在使用eclipse和adt插件的时候又发现了问题: gen目录:adt不能生成gen目录,这样R类就无法生成; 手工做了一些配置,想映射到target中的对应目录下,也不完美,因为这样就不好用到adt插件了; 无法利用adt插件run android application了。 maven-android-plugin还不完善,虽然有电子文档,但是有的对不上,比如版本。 只好一个一个的看它wiki文档和下面的跟贴。 终于找到一个作者写的m2eclipse-android-integration,可以比较完美的实现这些工具的集成: http://code.google.com/p/m2eclipse-android-integration/ 下面说说实现的步骤,这里用我的GolfDemo作为示例。 日志引用解决maven项目在eclipse中循环构建的问题关注m2eclipse集成android的eclipse插件bug    发送文章为PDF   

星期四 四月 29th, 2010 in , , , , | No Comments »

为android项目集成maven

为什么要为android项目增加maven集成功能呢?这里我想到几个主要理由: 部署测试人员和开发人员的角色分离,让他们摆脱eclipse开发环境设置android sdk环境,直接在服务器上运行一个命令,然后下载它的apk包,安装到手机上; 开发人员和android market市场发布人员的角色分离,市场发布人员不知道什么是签名等等,也是在服务器端运行命令即可,需要输入密码,这个过程和开发人员隔离; 如果仅有上述两个理由,那么用android默认的ant脚本也可以了,还希望android项目需要的类库也自动解决依赖问题,那么就使用maven吧。 说一下集成maven的步骤。 日志引用解决maven项目在eclipse中循环构建的问题maven集成eclipse android项目办法总结    发送文章为PDF   

星期三 四月 28th, 2010 in , , , , | No Comments »

非官方的139社区api文档

要么是我没有找到,要么是没有,总之,为了方便开发,我在google code上生成了java的139社区api部分文档。如果官方认为不妥,可以通知我删除。 有关文档的发布步骤,可参见我另外一篇文章,maven项目部署到google code上的步骤。 api的maven项目版本,见: http://easymorse.googlecode.com/svn/trunk/client 可以通过: svn co http://easymorse.googlecode.com/svn/trunk/client 下载。 然后,当然前提是安装maven,可以上网,导入为eclipse项目 mvn eclipse:eclipse 另外为了方便,我将编译好的jar文件也做好提交了,见: http://easymorse.googlecode.com/svn/trunk/client/target/client-1.0-beta.jar 当然,做java开发少不了javadoc,也在里面: http://easymorse.googlecode.com/svn/trunk/client/target/site/apidocs/index.html 另外,如何使用maven的类库依赖,做自己的maven项目,设置还是要参见maven项目部署到google code上的步骤后半部分。    发送文章为PDF   

星期四 四月 22nd, 2010 in , , | No Comments »

maven项目部署到google code上的步骤

google code提供了基于http/https的svn服务,可以利用这个部署maven项目。也就是将google code的svn repository作为maven repository。 以前曾经这样做过,见: http://easymorse-repo.googlecode.com/svn/trunk 这次想开发一个139社区的应用,139社区提供了一个客户端的java库,附带源代码,整理了一下源代码,将它生成为maven项目。见: http://easymorse.googlecode.com/svn/trunk/client/ 想把它deploy到上面easymorse-repo,遇到了麻烦。以前的办法失效了。估计是这几年版本库更新版本和配置了。 日志引用非官方的139社区api文档    发送文章为PDF   

星期四 四月 22nd, 2010 in , , , | No Comments »

maven怎样把所有类库打在一个发行包里

默认情况下,maven做package的时候,只是项目程序编译打包到一个jar文件中,其他类库,需要引用到classpath里面去,这对于桌面应用很麻烦。 maven提供了将所有类库打在一个包里面的办法。见: <plugin>     <artifactId>maven-assembly-plugin</artifactId>     <configuration>         <appendAssemblyId>false</appendAssemblyId>         <descriptorRefs>             <descriptorRef>jar-with-dependencies</descriptorRef>         </descriptorRefs>         <archive>             <manifest>                 <mainClass>welcome.ExportConsole</mainClass>             </manifest>         </archive>     </configuration>     <executions>         <execution>             <id>make-assembly</id>             <phase>package</phase>             <goals>                 <goal>assembly</goal>             </goals>         </execution>     </executions> </plugin> 这里还设置了程序入口,main方法的类。    发送文章为PDF   

星期五 三月 19th, 2010 in , | No Comments »

在gwt项目中使用maven的方法

gwt默认是使用ant脚本的。但是我们的项目都十分依赖maven,因为maven实在是太方便了。 在gwt项目中使用maven并不难,主要是使用这个插件: http://mojo.codehaus.org/gwt-maven-plugin/ 目录结构和ant或者eclipse gwt插件稍有不同: 所有java文件采用的是maven惯用目录结构,但是web部分,使用ant和eclipse gwt插件约定的结构,这样是为了能使用到gwt eclipse插件。    发送文章为PDF   

星期一 一月 11th, 2010 in , , | No Comments »