• Maven自定义Archetype(zz)


    原文地址:http://www.cnblogs.com/javalouvre/p/5858162.html


    Maven提供了archetype帮助我们快速构建项目骨架,很便捷。但是,中央仓库中的archetype版本过于陈旧,构建好项目后,需要修改很多信息,甚是麻烦,那么如何自定义个archetype就显得很有必要。

       自定一个archetype须遵循以下步骤:

       1、手工搭建好一个完善的工程;

       2、进入工程目录,保留src和pom.xml,删除其他文件;

       3、执行指令mvn archetype:create-from-project 此时会自动生成target目录;

       4、执行指令cd target/generated-sourced/archetype 切换目录;

       5、执行指令mvn install 那么一个archetype就安装到本地库,在Eclipse中就可以被选择用于构建项目;

    ================================================

      在此过程中可能会出现一个问题,摘录如下:

      1、在windows平台下,执行第三步,抛出如下错误

    复制代码
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 2.294 s
    [INFO] Finished at: 2016-09-09T16:03:51+08:00
    [INFO] Final Memory: 17M/164M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2
    .4:create-from-project (default-cli) on project Test03: Error configuring comman
    d-line. Reason: Maven executable not found at: *apache-maven-3.3.9inm
    vn.bat -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
    ch.
    复制代码

       针对此错误,进入apache-maven-3.3.9in目录,拷贝mvn.cmd,重命名为mvn.bat即可。

    2、选择archetype构建web项目时,WEB-INFweb.xml首行的声明version="1.0" 也随着构建时填写的版本号同时改变。

       针对这个问题,在执行第五步之前,进入当前目录下的 src 目录,找到web.xml 把第一个${version}变量,改为1.0即可,其他类似XML配置文件同理修改。

    3、使用Eclipse构建,发布到中间件中时,访问路径还是archetype的路径,导致以项目名访问失败

       该问题的解决方案为,在构建archetype的时候,该archetype中的pom.xml文件中的finalName用变量制定,即<finalName>${project.artifactId}</finalName>

  • 相关阅读:
    sprintf_s的使用
    DHCP的若干原理解释
    常用在线转换工具
    spring事务隔离级别
    Spring3声明式事务处理事务无法回滚rollback分析(annotation与xml配置混用)
    SQL按时间段统计(5分钟统计一次访问量为例,oracle统计)
    java对象传递小解析
    java、javac -version不一致(java编译及运行环境不一致)的环境变量设置问题解决
    ibator自动代码生成
    Velocity中加载vm文件的三种方式
  • 原文地址:https://www.cnblogs.com/strinkbug/p/6418287.html
Copyright © 2020-2023  润新知