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

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

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

    创建的项目结构如:
    定制Maven的ArcheType
    默认的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
    默认的是使用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:\workspace\ArcheTypeDemo\target\generated-sources\archetype\target\ArcheTypeDemo-archetype-0.0.1-SNAPSHOT.jar to D:\Java\local_repository\net\oseye\ArcheTypeDemo-archetype\0.0.1-SNAPSHOT\ArcheTypeDemo-archetype-0.0.1-SNAPSHOT.jar
    [INFO] Installing D:\workspace\ArcheTypeDemo\target\generated-sources\archetype\pom.xml to D:\Java\local_repository\net\oseye\ArcheTypeDemo-archetype\0.0.1-SNAPSHOT\ArcheTypeDemo-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:
    定制Maven的ArcheType
  5. 清理工作
    如果步骤4,你不使用Eclipse,而是使用Maven指令来创建,创建的项目你会多了一些不必要的文件:
    定制Maven的ArcheType
    很不干净。需要修改

    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到本地仓库即可。

相关文章:

  • 2021-10-13
  • 2021-12-02
  • 2021-08-12
  • 2022-01-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-21
  • 2021-10-20
  • 2021-05-21
  • 2022-02-22
  • 2021-06-11
相关资源
相似解决方案