作者:Eddy  历史版本:1  最后编辑:Eddy  更新时间:2024-06-27 10:20

打包工具

  • build,用在window下打包。maven版本3.2.3;
  • jenkins,用在linux下打包快照。maven版本3.6.0;
  • release,用在window/linux下打包发布。maven版本3.6.0;
  • snapshot,用在window/linux下打包快照。maven版本3.6.0;

以build打包工具为例进行说明
v3.3.3及以下版本使用!

build打包工具目录

build目录在源码根目录下。

|-- build                            # 构建目录
|   |-- build.xml                    # ant构建配置文件
|   |-- dev-8081.properties            # 构建发布到8081端口私服的配置文件,默认使用这个环境
|   |-- dev-8082.properties            # 构建发布到8082端口私服的配置文件
|   |-- dev.properties                # 构建发布本地环境配置文件
|   |-- readMe.txt                    # 说明文档
|   |-- lib                            # 打包工具类库

修改配置文件

修改dev.properties文件

  • 修改maven.home属性。
  • maven.home地址以E:\ibps-dev\apache-maven-3.2.3为例。

修改前:

##开发环境路径绝对路径或相对路径
##dev.path=E:\\security-workspace\\ibps\\code\\lc2.0.9
dev.path=..\\
##快照版后缀
pom.snapshot=SNAPSHOT
##正式版后缀
pom.release=LC.RELEASE
##版本自动递增
pom.version.auto=false
##哪一个版本递增多少
##2.0.0表示增长后为2.1.0
pom.version.step=1,1
##maven根目录
maven.home=D:\\ibps-dev\\apache-maven-3.2.3

修改后:

##开发环境路径绝对路径或相对路径
##dev.path=E:\\security-workspace\\ibps\\code\\lc2.0.9
dev.path=..\\
##快照版后缀
pom.snapshot=SNAPSHOT
##正式版后缀
pom.release=LC.RELEASE
##版本自动递增
pom.version.auto=false
##哪一个版本递增多少
##2.0.0表示增长后为2.1.0
pom.version.step=1,1
##maven根目录
maven.home=E:\\ibps-dev\\apache-maven-3.2.3 #修改的位置

修改dev-8081.properties文件

  • 修改maven.repo属性。
  • maven.repo地址以F:\m2\m2\Repository为例。
  • 修改maven.settings属性。
  • maven.settings地址以F:\m2\m2\settings.xml为例。

修改前:

maven.profile=ibps-8081
##maven仓库地址
maven.repo=G:\\m2\\m2\\Repository
##maven使用的settings.xml文件
maven.settings=G:\\m2\\m2\\settings.xml

修改后:

maven.profile=ibps-8081
##maven仓库地址
maven.repo=F:\\m2\\m2\\Repository            # 修改的位置
##maven使用的settings.xml文件
maven.settings=F:\\m2\\m2\\settings.xml        # 修改的位置

修改dev-8082.properties文件

  • 修改maven.repo属性。
  • maven.repo地址以F:\m2\m2-ibps-8082\Repository为例。
  • 修改maven.settings属性。
  • maven.settings地址以F:\m2\m2-ibps-8082\settings.xml为例。

修改前:

maven.profile=ibps-8082
##maven仓库地址
maven.repo=G:\\m2\\m2-ibps-8082\\Repository
##maven使用的settings.xml文件
maven.settings=G:\\m2\\m2-ibps-8082\\settings.xml

修改后:

maven.profile=ibps-8082
##maven仓库地址
maven.repo=F:\\m2\\m2-ibps-8082\\Repository            # 修改的位置
##maven使用的settings.xml文件
maven.settings=F:\\m2\\m2-ibps-8082\\settings.xml    # 修改的位置

标准打包环境:

  • maven 3.2.3
  • java 1.8+
  • ant 1.9.7

FAQ

使用高版本Maven打包报错,提示“-Dmaven.multiModuleProjectDirectory system property is not set.”
在每个 artifact:mvn 节点中添加以下内容:

<jvmarg value="-Dmaven.multiModuleProjectDirectory=${maven.home}" />

修改后结果:

<target name="package-starter" description="starter package"  if="do.starter">
    <tstamp>
        <format property="starter.time" pattern="yyyy-MM-dd HH:mm:ss.SSS"/>
    </tstamp>
    <echo>----${starter.time}------</echo>
    <echo>----starter ${cmd} begin------</echo>

    <loadproperties srcFile="dev-${profile}.properties" />

    <artifact:mvn pom="../ibps-starter-parent/pom.xml"  mavenHome="${maven.home}" fork="true" >
        <jvmarg value="-Dmaven.multiModuleProjectDirectory=${maven.home}" />
        <arg value="clean" />
        <arg value="package" />
        <arg value="${cmd}" />
        <arg value="--activate-profiles" />
        <arg value="${maven.profile}" />
        <arg value="--global-settings" />
        <arg value="${maven.settings}" />
        <arg value="-Dmaven.repo.local=${maven.repo}" />

        <arg value="-Dmaven.test.skip" />
        <!--<arg value="-X" />-->
    </artifact:mvn>
    <echo>---starter ${cmd} end------</echo>
</target>