maven-2 - 如何在 Ant 中从 Mavens 的 pom 中获取项目版本

标签 maven-2 ant

我有 maven 项目和 ant 任务。
在 ant 任务中,我想从 pom.xml 获取版本属性。
如何获得?

在 pom.xml 中:<version>2.03.010</version>

最佳答案

Maven Ant tasksPOM processing 提供一些目标

要从 POM 访问版本,您可以使用以下命令:

<artifact:pom id="mypom" file="pom.xml" />

<echo>The version is ${mypom.version}</echo>

更新:使用任务。您将需要安装它们。 Install instructions

您可以:
  • 将 JAR 放在 Ant lib 目录中,将其包含在 CLASSPATH 环境变量中
  • 使用 -lib 命令行参数
  • 将其传递给 Ant
  • 使用 typedef 声明。这允许您将 Ant Tasks 的库存储在您喜欢的任何位置并将其放在构建文件中的位置。

  • 使用选项 2. 您可以按如下方式修改您的项目,以使 ant 了解 maven-ant-tasks 架构:
    <project ... xmlns:artifact="antlib:org.apache.maven.artifact.ant">
      ...
    </project>
    

    使用选项 3。您指定 typedef 如下(假设 maven-ant-tasks jar 在您的项目的 lib 目录中):
    <project ... xmlns:artifact="antlib:org.apache.maven.artifact.ant">
      ...
      <path id="maven-ant-tasks.classpath" path="lib/maven-ant-tasks-2.0.10.jar" />
      <typedef resource="org/apache/maven/artifact/ant/antlib.xml"
           uri="antlib:org.apache.maven.artifact.ant"
           classpathref="maven-ant-tasks.classpath" />
      ...
    </project>
    

    关于maven-2 - 如何在 Ant 中从 Mavens 的 pom 中获取项目版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1490914/

    相关文章:

    eclipse - 我可以通过 pom.xml 配置 m2eclipse 吗?

    java - 推荐的 Maven 存储库搜索引擎?

    html - 无法使用apache wink在Rest webservice中加载网页

    java - 是什么导致了这个 NoClassDefFoundError 错误?

    maven-2 - java.net maven repo - JMS 工件丢失

    java - Maven 站点部署失败,SCP 连接被拒绝 - Windows

    java - Struts 2 #{} 在 Netbeans 7.3 中给出编译错误

    java - Ant复制文件而不覆盖

    java - Ant 构建问题 : nested exception is java. lang.NoClassDefFoundError:org/apache/tiles/request/servlet/ServletApplicationContext

    android - 如何将 Eclipse Android 项目转换为使用 Ant 进行构建?