Tag: maven

将Extjs放入Maven中心库

July 30th, 2010

总算比较完美的解决了extjs在maven下的依赖问题,过程如下:

  • 首先将extjs作为一个单独的maven项目,通过maven-assembly-plugin插件做成一个zip包。
  • 然后通过sonatype同步的maven中心库,这步最复杂
    + 首先要向sonatype申请,主要是说明一下你的项目,例如它的描述,项目主页,代码库的位置等。
    + 如果批准,你就可以通过maven-deploy-plugin插件将的包deploy到sonatype的一个零时库。
    + 进入零时库后,你要通过一个管理界面将包放到sonatype的正式库,这步需要检验你的包是否规范,什么license, gpg签名,scm等信息一样都不能少。
    + 如果进入sonatype的正式库,再向sonatype提出申请,要求激活与maven中心库的同步。
    + 如果激活,过几个小时,就能看到你的包了。看看我的!
  • 以后有新版本,就不用再申请,只要保证你的包格式规范就行了。
  • 全部过程最多也就2天时间,如果没有时差,估计更快。

大家以后再也不用在自己的代码库中保存extjs那一大堆文件了,直接通过maven导入extjs,如果有新版本的需要,请email给我。

    ...
    <dependency>
      <groupId>org.gaixie.extjs-wrapped</groupId>
      <artifactId>extjs-wrapped</artifactId>
      <version>3.2.1</version>
      <type>zip</type>
    </dependency>
    ...

然后通过 maven-war-plugin 插件的 overlay 把它解压到你的web项目目录中,配一下jetty,就可以很方便的调试了。可以参考我写的pom。

我是参考这几篇文章操作的:
[1] http://www.jroller.com/holy/entry/releasing_a_project_to_maven
[1] https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide

Tags: , ,
Posted in Technology | 2 Comments »

Using maven release plugin with mercurial

October 28th, 2009

maven-release-plugin是一个有用的插件,特别是对于多模块的 maven 项目,只需一个命令就可以帮你自动完成下列操作:

  • 将顶层的POM以及每一个子POM的版本号进行更新,例如从 0.1-SNAPSHOT 到 0.1
  • 编译每个模块
  • 将更新 commit 到版本库
  • 在版本库中为此次 release 作标记( tag v0.1)
  • 将版本号从 0.1 更新到 0.2-SNAPSHOT
  • 将更新 commit 到版本库

此插件支持 mercurial 作为你的版本库,配置比Subversion还要简单。下面是开源项目JingsY(前两天写了一个数据库文档的生成工具)的Release全过程。 (more…)

Tags: ,
Posted in Technology | No Comments »