zoukankan      html  css  js  c++  java
  • 定制Maven的ArcheType

    根据需要定制Maven的ArcheType的好处不言而喻了,我就不再啰嗦。定制一般通过从Maven的项目构建,比手动构建省去了配置文件的编写、资源文件的复制等繁琐的操作,下面我们就说下从Maven项目中构建定制的ArcheType。

    1. 构建Maven项目
      你可以使用Maven命令来创建,我们这使用Eclipse来构建项目,因为后面将展示如何使用配置文件来清理一些不想要的资源。使用Eclipse(安装了Maven插件的)创建Maven Project项目:

      File->New->Other->Maven->Maven Project

      创建的项目结构如:

      默认的Junit使用的版本是3.8.1,我们想以后都使用比较新的版本如4.11(仓库查询:http://mvnrepository.com),需要修改pom.xml,把
      <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <version>3.8.1</version>
       <scope>test</scope>
      </dependency>
      修改为
      <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <version>4.11</version>
       <scope>test</scope>
      </dependency>
    2. 生成archetype
      在ArcheTypeDemo上右键->Run As->Maven build...

      默认的是使用maven-archetype-plugin:2.2生成的,如果你需要使用最新版本的maven-archetype-plugin请配置pom.xml,Run后在target目录下生成了一个generated-sources目录,里面就是archetype。
    3. 安装archetype到本地仓库
      如操作步骤如2,但”Base directory“需要选择generated-sources/archetype,然后在Goals里输入install,或使用Maven指令
      cd target/generated-sources/archetype& mvn install
      执行后输出:

      [INFO] --- maven-install-plugin:2.5.1:install (default-install) @ ArcheTypeDemo-archetype ---
      [INFO] Installing D:workspaceArcheTypeDemo argetgenerated-sourcesarchetype argetArcheTypeDemo-archetype-0.0.1-SNAPSHOT.jar to D:Javalocal_repository etoseyeArcheTypeDemo-archetype.0.1-SNAPSHOTArcheTypeDemo-archetype-0.0.1-SNAPSHOT.jar
      [INFO] Installing D:workspaceArcheTypeDemo argetgenerated-sourcesarchetypepom.xml to D:Javalocal_repository etoseyeArcheTypeDemo-archetype.0.1-SNAPSHOTArcheTypeDemo-archetype-0.0.1-SNAPSHOT.pom
      [INFO] 
      [INFO] --- maven-archetype-plugin:2.2:update-local-catalog (default-update-local-catalog) @ ArcheTypeDemo-archetype ---

      这样就把你定制的archetype发布到本地仓库了,如果要安装到远程仓库需要使用deploy命令。
    4. 使用定制的archetype
      安装完后,如步骤1的操作步骤来创建Maven Project,在选择Archetype的时候,通过Filter:

    5. 清理工作
      如果步骤4,你不使用Eclipse,而是使用Maven指令来创建,创建的项目你会多了一些不必要的文件:

      很不干净。需要修改

      target/generated-sources/archetype/src/main/resources/META-INF/maven/archetype-metadata.xml

      来清理,删除
       <fileSet encoding="UTF-8">
            <directory>.settings</directory>
            <includes>
              <include>**/*.prefs</include>
            </includes>
          </fileSet>
          <fileSet filtered="true" encoding="UTF-8">
            <directory></directory>
            <includes>
              <include>.classpath</include>
              <include>.project</include>
            </includes>
          </fileSet>
      然后重新安装ArcheType到本地仓库即可。
    出处:http://www.zhaiqianfeng.com    
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    关于基本的线程的生命周期
    HTML Response ContentType 大全
    IE与Firefox的CSS兼容大全
    文件上传代码
    C#.NET里面抽象类和接口有什么区别
    用SQL命令创建数据库
    JS根据生日算岁数
    改变Iframe的Src
    JS做加法精度问题
    真正的问题应该在我身上……
  • 原文地址:https://www.cnblogs.com/zhaiqianfeng/p/4620153.html
Copyright © 2011-2022 走看看