使用ant替换xml中的文本
我想使用ant更改xml文件中的版本号。使用ant替换xml中的文本,ant,Ant,我想使用ant更改xml文件中的版本号。 我尝试了ant的替换任务,但它不起作用 我拥有的xml文件如下所示 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org<br>/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt
我尝试了ant的替换任务,但它不起作用 我拥有的xml文件如下所示
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org<br>/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>xyz</groupId>
<artifactId>proj</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
4.0.0
xyz
项目
0.0.1-快照
聚甲醛
您可以使用复制任务。
abc.template.xml:
<abc version="@VERSION@">
<item name="xxxxx"/>
</abc>
ant_脚本:
<copy file="abc.template.xml"
tofile="abc.xml"
filtering="yes" overwrite="yes">
<filterset>
<filter token="VERSION" value="1.0"/>
</filterset>
</copy>
我不确定,但您的问题似乎是由错误的文件或错误的语法造成的 我的pom.xml中有以下内容:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>@VERSION</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>my-app</name>
<url>http://maven.apache.org</url>
</project>
@版本
com.mycompany.app
我的应用程序
罐子
1.0-快照
我的应用程序
http://maven.apache.org
请参见下面的my build.xml
<project name="Test" default="replaceContent" basedir=".">
<target name="replaceContent">
<replace file="src/pom.xml" token="@VERSION" value="5.0.0.0"/>
</target>
</project>
现在,如果我运行$replaceContent,它会将我的令牌@VERSION替换为我在构建文件中指定为“value”的任何内容。因此,成功执行后,pom.xml中的
值将更改为5.0.0.0
下次当你发布任何问题时,也要提到错误的细节 “我尝试了ant的替换任务,但它不起作用。”什么不起作用?你有错误吗?还是替换了错误的文本?或请更具体一点。顺便说一句:您的xml缺少一些结束标记
,
。您的ant
xml文件实际上是一个maven pom.xml-您似乎把教程弄混了。Ant和Maven是两个完全不同的构建系统。我同意在生成Maven POM文件时使用这种方法