Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Ant/Ivy创建pom.xml和pom.properties并将它们嵌入jar/war文件_Ant_Ivy_Pom.xml - Fatal编程技术网

使用Ant/Ivy创建pom.xml和pom.properties并将它们嵌入jar/war文件

使用Ant/Ivy创建pom.xml和pom.properties并将它们嵌入jar/war文件,ant,ivy,pom.xml,Ant,Ivy,Pom.xml,我们将Ant与Ivy结合使用,我想将pom.xml和pom.properties文件嵌入我们创建的JAR和WAR中,就像您使用Maven时看到的那样。使用任务,从ivy.xml文件创建pom.xml非常简单。可以通过任务获取artifactId和gorupId。但是,如何创建pom.properties文件。有必要吗?好的,在浏览文档时,我发现这比我想象的要容易得多。常春藤产生了许多可以使用的特性。我还发现pom.xml文件只包含groupId、artifactId和版本,因此生成它并不困难 以

我们将Ant与Ivy结合使用,我想将
pom.xml
pom.properties
文件嵌入我们创建的JAR和WAR中,就像您使用Maven时看到的那样。使用
任务,从
ivy.xml
文件创建
pom.xml
非常简单。可以通过
任务获取artifactId和gorupId。但是,如何创建
pom.properties
文件。有必要吗?

好的,在浏览文档时,我发现这比我想象的要容易得多。常春藤产生了许多可以使用的特性。我还发现
pom.xml
文件只包含
groupId
artifactId
版本
,因此生成它并不困难

以下是我所做的:

<target name="package" depends="compile">

    <!-- Make the pom.xml -->
    <ivy:makepom ivyfile="${ivy.resolved.file}"
        pomfile="${target.dir}/pom.xml"/>

    <!-- Make the pom.properties file -->
    <echo file="${target.dir}/pom.properties">
# Generated by Maven NOT!
# ${build.date}
version=${ivy.revision}
groupId="${ivy.organisation}
artifactId="${ivy.module}
    </echo>

<!-- Build your JAR or whatever -->

    <jar destfile="${target.dir}/{ant.project.name}.jar"
         basedir="${main.destdir}">
         <manifest>
              <section name="Build-Information">
                  <attribute name="Project" value="${env.JOB_NAME}"/>
                  <attribute name="Build-Number" value="${env.BUILD_NUMBER}"/>
                  <attribute name="Build-Date" value="${build.date}"/>
              </section>
         </manifest>
         <zipfileset dir="${target.dir}"
              prefix="$META-INF/maven/${ivy.organisation}/${ivy.module}">
              <include name="pom.xml"/>
              <include name="pom.properties"/>
         </zipfileset>
     </jar>
</target>

#由Maven生成的不是!
#${build.date}
版本=${ivy.revision}
groupId=“${ivy.organization}
artifactId=“${ivy.module}
这有助于使使用Ivy与Maven非常兼容