Ich versuche, ein XML-Element in eine XML-Datei über Maven Ant-Plugin und die ReplaceRegexp Aufgabe einzufügen.Maven Ant Regex zum Einfügen von XML-Text
Dies ist, wie es aussieht, ursprünglich:
<types>
<xs:schema>
<xs:import namespace='http://biz.funct.com/c/data/v4_6'
schemaLocation='commoncomplexelements.xsd' />
</xs:schema>
<xs:schema>
<xs:import namespace='http://biz.funct.com/b/data/v1_5'
schemaLocation='location.xsd' />
</xs:schema>
<xs:schema>
<xs:import namespace='http://biz.funct.com/location/a/data/v1_5'
schemaLocation='location-validcodes.xsd' />
</xs:schema>
<xs:schema>
<xs:import namespace='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd'
schemaLocation='oasis-200401-wss-wssecurity-secext-1.0.xsd' />
</xs:schema>
</types>
Und das ist, wie es am Ende aussehen soll:
<types>
<xs:schema>
<xs:import namespace='http://biz.funct.com/c/data/v4_6'
schemaLocation='commoncomplexelements.xsd' />
</xs:schema>
<xs:schema>
<xs:import namespace='http://biz.funct.com/b/data/v1_5'
schemaLocation='location.xsd' />
</xs:schema>
<xs:schema>
<xs:import namespace='http://biz.funct.com/location/a/data/v1_5'
schemaLocation='location-validcodes.xsd' />
</xs:schema>
<xs:schema>
<xs:import namespace='http://biz.funct.com/location/d/data/v1_5'
schemaLocation='newfile.xsd' />
</xs:schema>
<xs:schema>
<xs:import namespace='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd'
schemaLocation='oasis-200401-wss-wssecurity-secext-1.0.xsd' />
</xs:schema>
</types>
Dies ist, was ich bisher:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>insert-xml</id>
<phase>initialize</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target name="Insert xml">
<replaceregexp flags="m">
<regexp pattern="\<xs:schema\>(.*)\</xs:schema\>"/>
<substitution expression="hello"/>
<filelist
id=""
dir="${project.build.directory}/f"
files="ServiceInterface.wsdl"/>
</replaceregexp>
</target>
</configuration>
</execution>
</executions>
</plugin>
Jede Hilfe bei der richtigen Regexp würde sehr geschätzt werden.
Was ist das eigentliche Problem? BTW, wenn Sie versuchen, einen Knoten in die vorletzte Position einzufügen, wie es offensichtlich ist, dass Regex wird es definitiv nicht tun, da es alles zwischen ... ' –
sweaver2112
@ sweaver2112 Ziel das Problem wird die richtige Regex. Ich habe die Frage bearbeitet, um sie zu klären. Ich weiß, dass die, die ich habe, nicht funktioniert, ich habe ziemlich viel Zeit mit dem Testen verbracht, aber ein einfaches Beispiel hinterlassen. Ich habe Angst, dass meine Regex-Fähigkeiten sehr begrenzt sind. – soltzu
Sie möchten also den Spot direkt vor dem letzten Schemaparagieren? – sweaver2112