使用Maven构造Turbine项目

一 关于Maven

    它是一个命令行构建工具.本身配置比较简单.主要是几个环境变量的设置.

${Maven.home}/bin/下有个批处理文件maven.bat,其中:

@REM ----------------------------------------------------------------------------

@REM JAVA_HOME - 一个JDK的主目录.

@REM MAVEN_HOME - Maven安装主目录位置.

@REM 可选的环境变量

@REM MAVEN_HOME_LOCAL - 覆盖Maven工作所产生的文件的缺省路径

@REM MAVEN_BATCH_ECHO - 设为'on'使能批处理命令的反馈

@REM MAVEN_BATCH_PAUSE - 设为'on',在结束前等待一个键的按下.

@REM MAVEN_OPTS - Maven运行时要传给Java VM的参数.例如,在调试Maven本身时,使用 set MAVEN_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000

@REM ----------------------------------------------------------------------------

 

 

这个批提供了调用外部文件的设置:

if exist "%HOME%/mavenrc_pre.bat" call "%HOME%/mavenrc_pre.bat"

if exist "%HOME%/mavenrc_post.bat" call "%HOME%/mavenrc_post.bat"

为了修改一些配置和加入我们自己的配置项,我们使用mavenrc_pre.bat,其内容为:

MAVEN_HOME_LOCAL指向i:/maven_plugin,可以使Maven在构建项目时所下载的插件放在这个目录中,而不是缺省的%HOME%/.maven中了.

set MAVEN_HOME_LOCAL=i:/maven_plugin

set MAVEN_BATCH_ECHO=off

set MAVEN_BATCH_PAUSE=off

由于%HOME%是用户的主目录,不想把这两个批处理那里,而想和Maven放在一起,则修改上面%HOME%为"%MAVEN_HOME%:

if exist "%MAVEN_HOME%/mavenrc_pre.bat" call "%MAVEN_HOME%/mavenrc_pre.bat"

if exist "%MAVEN_HOME%/mavenrc_post.bat" call "%MAVEN_HOME%/mavenrc_post.bat"

此外,MAVEN_HOME_LOCAL还有其它的修改方式,那就是在build.properties中指定,其中的有关项为:

maven.home.local Maven用于写一些用户相关的细节所到的本机目录,例如,未打包的插件和缓存数据,缺省为${user.home}/.maven

maven.plugin.dir Maven能找到它自己的插件的地方,缺省为${maven.home}/plugins

maven.plugin.user.dir Maven只为特定用户查找的插件位置,缺省为${maven.home.local}/plugins

maven.plugin.unpacked.dir 处理用的为打包插件的位置,缺省为   ${maven.home.local}/cache

maven.repo.local 本机上的repository,Maven用来保存下载的制品,(jars etc),缺省为${maven.home.local}/repository

 

 

二 开始用Maven

   1 准备构建配置文件build.properties,其内容为:

   maven.appserver.home =D:/jakarta-tomcat- 5.5.6

   turbine.app.name=your appname

#如果不想生成演示页面,则设为false

turbine.app.setup.demo=true

   2 运行maven turbine:setup,生成项目.也可以带有参数,

   maven -Dturbine.app.name=helloworld -Dmaven.appserver.home=D:/jakarta-tomcat- 5.5.6 turbine:setup

   如果命令行中有这两个参数,则不需要第一步的工作,因为对于maven来说,这两个参数是必须要有的!

   其中:maven.appserver.home用于在发布应用时,把打包的部署文件发布到该项指定的目录中的容器环境.

   turbine.app.name则是你的项目名称.

   在运行了这个命令后,当前目录下会产生以你指定的your appname为名字的目录,在进入这个目录后,我们可以进行第三步了.

   3 运行maven turbine:deploy.

   它根据2步中生成的setup.properties,project.properties,project.xml来生成可供发布的制品.项目中使用到的库,都定义在project.xml,可以根据自己的项目需要裁剪这个文件. 经过裁剪后,运行这个任务产生发布.

   为了解决执行过程中出现的问题,先看看project.xml中的主要项:   

   <dependency>

      <groupId>turbine</groupId>

      <artifactId>turbine</artifactId>

      <version> 2.3.1</version>

      <type>jar</type>

      <properties>

        <war.bundle>true</war.bundle>

      </properties>

   </dependency>

   dependency元素定义了项目中依赖的库,该库位于${maven.home.local}/repository:

   <groupId>/jars/<artifactId>-<version>.<type>

         turbine/jars/  turbine   - 2.3.1    .jar

   上面展示了插件文件和元素dependency中子元素的对应关系.

  如果无法下载所需插件,或自己下载,或使用本机上有的,然后可以按照这种方式创建一个符合项目要求的插件来供它使用.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值