0

ビルドの直前に、ivy.xml の rev="{rev}" を動的に変更する必要があります。Perl XML:Simple モジュールを使用しようとしましたが、出力が受け入れられませんでした。依存関係セクションで、私は得ています:

<dependencies name="dependency">
  <poi org="ossjava" rev="3.6.0" />
</dependencies>

代わりに

<dependencies>
       <dependency org="ossjava" name="poi" rev="3.6.0"/>
</dependencies>

助けてください!Python コード スニペットでも十分です

4

1 に答える 1

1

XML::Simple は皮肉なことに、使用する最も複雑な XML モジュールです。空のKeyAttr引数を指定する必要があります。

とにかく、私は使用します:

use XML::LibXML qw( );

my $qfn = 'ivy.xml';

my $parser = XML::LibXML->new();
my $doc    = $parser->parse_file($qfn);
my $root   = $doc->documentElement();

for my $poi ($root->findnodes('//poi')) {
   $poi->setAttribute('rev', process($poi->getAttribute('rev')));
}

$doc->toFile($qfn);
于 2012-10-01T23:06:25.250 に答える