MSBuild 正则表达式值为空
MSBuild Regex Value is empty
我无法让我的正则表达式在 MSBuild 中工作(这是我真正需要它的地方)。
在 C# 中正常工作:
var input = @"Es wird versucht, das Paket aus ""Amusoft.EventManagement.csproj"" zu erstellen.;Paketerstellung der Dateien aus ""D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release"".;""Amusoft.EventManagement.nuspec"" wird für Metadaten verwendet.;Das Paket ""D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg"" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für ""Amusoft.EventManagement.csproj"" zu erstellen.;Paketerstellung der Dateien aus ""D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release"".;""Amusoft.EventManagement.nuspec"" wird für Metadaten verwendet.;Das Paket ""D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg"" wurde erfolgreich erstellt.";
var m = Regex.Match(input, "(?<=\")[^\"]+nupkg(?=\")");
returns D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg
这正是我想要的。但是我无法在 MSBuild 中return任何东西,这是我需要它的地方。
MSBuild 尝试让它工作:
<Target Name="AfterBuild" Condition="'$(Configuration)' == 'Release'">
<!-- Ensure Directory + Package project-->
<MakeDir Directories="$(SolutionDir)build$(ProjectName)$(Configuration)\"/>
<Exec ConsoleToMSBuild="true" Command="nuget pack $(ProjectPath) -Symbols -Prop Configuration=Release -OutputDirectory $(SolutionDir)build$(ProjectName)$(Configuration)" >
<Output TaskParameter="ConsoleOutput" ItemName="NugetPackOutput"/>
</Exec>
<!-- Prepare pushing process -->
<Message Importance="High" Condition="!Exists('$(ProjectDir)nugetapikey.txt')" Text="nugetapikey.txt does not exist." />
<ReadLinesFromFile Condition="Exists('$(ProjectDir)nugetapikey.txt')" File="$(ProjectDir)nugetapikey.txt">
<Output TaskParameter="Lines" ItemName="NugetApiKey"/>
</ReadLinesFromFile>
<Message Importance="High" Condition="Exists('$(ProjectDir)nugetapikey.txt')" Text="NugetApiKey is '@(NugetApiKey)'" />
<PropertyGroup>
<NugetPackageFileName2>$([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), `(?<=")[^"]+nupkg(?=")`))</NugetPackageFileName2>
<NugetPackageFileName>$([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), `(?<=")[^"]+.nupkg(?=")`))</NugetPackageFileName>
<NugetPushCommand>nuget push PICKNAMEINEXPLORER $(NugetPackageFileName) -ApiKey @(NugetApiKey) -Timeout 60 -Verbosity normal</NugetPushCommand>
</PropertyGroup>
<Message Importance="High" Text="Pushcommand is $(NugetPushCommand)" />
<Message Importance="High" Text="Pack Output is @(NugetPackOutput)" />
<Message Importance="High" Text="NugetPackageFileName is $(NugetPackageFileName)" />
<Message Importance="High" Text="NugetPackageFileName2 is $(NugetPackageFileName2)" />
<Message Importance="High" Text="Regex1 is $([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), '.+'))" />
<Message Importance="High" Text="Regex2 is $([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), `.+`))" />
<Message Importance="High" Text="Regex3 is $([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), '(?<=")[^"]+nupkg(?=")'))" />
<WriteLinesToFile Condition="Exists('$(ProjectDir)nugetapikey.txt')" File="$(SolutionDir)build$(ProjectName)$(Configuration)\pushcommand.txt" Lines="$(NugetPushCommand)" Overwrite="true" Encoding="Unicode"/>
<Exec ConsoleToMSBuild="true" ContinueOnError="true" IgnoreExitCode="true" Command="explorer.exe $(SolutionDir)build$(ProjectName)$(Configuration)" />
</Target>
结果:
NugetPackageFileName is
1> NugetPackageFileName2 is
1> Regex1 is Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wurde erfolgreich erstellt.
1> Regex2 is Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wurde erfolgreich erstellt.
1> Regex3 is
1> Regex3 is
.+
和 '.+' 试图验证内联正则表达式是否有效 - 事实就是如此。但是,任何通过正则表达式获取值的实际尝试都会失败。
基本上我想在这里做的是有一个构建脚本(当我完成后)将打开一个控制台window,其中包含一个预填充命令以将包推送到 nuget,而不会删除我的 apikey在来源 control/csproj 中。除了获得我的 Regex 值之外,其余的已经在以前的版本中工作了。
问题:
有谁知道我在 Regex 的 MSBuild 版本中做错了什么?
这里的问题不在于正则表达式。 Match
期望 String
并且它适用于 Properties
,但不适用于 Items
.
您需要更改 Exec
的输出类型(见下文),然后参考 $(NugetPackOutput)
而不是 @(NugetPackOutput)
。
之前
<Output TaskParameter="ConsoleOutput" ItemName="NugetPackOutput"/>
之后
<Output TaskParameter="ConsoleOutput" PropertyName="NugetPackOutput"/>
这是一个证明这一点的测试。注意在 MatchItem2
的情况下,正则表达式实际上匹配 ItemName
而不是输出。
test.bat
@ECHO off
ECHO Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wurde erfolgreich erstellt.
BuildApp.csproj
<Target Name="Test">
<Exec ConsoleToMSBuild="true" Command="test.bat">
<Output TaskParameter="ConsoleOutput" ItemName="OutputItem" />
<Output TaskParameter="ConsoleOutput" PropertyName="OutputProperty" />
</Exec>
<Message Text="OutputItem: @(OutputItem)" />
<Message Text="---" />
<Message Text="OutputProperty: $(OutputProperty)" />
<Message Text="---" />
<Message Text="MatchItem1: $([System.Text.RegularExpressions.Regex]::Match(@(OutputItem), '.+'))" />
<Message Text="---" />
<Message Text="MatchItem2: $([System.Text.RegularExpressions.Regex]::Match(@(OutputItem), '.{5}'))" />
<Message Text="---" />
<Message Text="MatchItem3: $([System.Text.RegularExpressions.Regex]::Match(@(OutputItem), '(?<=")[^"]+nupkg(?=")'))" />
<Message Text="---" />
<Message Text="MatchProperty: $([System.Text.RegularExpressions.Regex]::Match($(OutputProperty), '(?<=")[^"]+nupkg(?=")'))" />
</Target>
测试输出
Test:
test.bat
Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen
.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amu
soft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird f?r
Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\
Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erst
ellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventManagement.csproj"
zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventMa
nagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspe
c" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManag
ement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wu
rde erfolgreich erstellt.
OutputItem: Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj"
zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventMa
nagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspe
c" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManag
ement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfo
lgreich erstellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventManagem
ent.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amu
soft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventMana
gement.nuspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusof
t.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbo
ls.nupkg" wurde erfolgreich erstellt.
---
OutputProperty: Es wird versucht, das Paket aus "Amusoft.EventManagement.cspr
oj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.Eve
ntManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.n
uspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventM
anagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde
erfolgreich erstellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventMan
agement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft
\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.Event
Management.nuspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Am
usoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.s
ymbols.nupkg" wurde erfolgreich erstellt.
---
MatchItem1: Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj"
zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventMa
nagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspe
c" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManag
ement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfo
lgreich erstellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventManagem
ent.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amu
soft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventMana
gement.nuspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusof
t.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbo
ls.nupkg" wurde erfolgreich erstellt.
---
MatchItem2: @(Out
---
MatchItem3:
---
MatchProperty: D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventMana
gement\Release\WeakEvent.2.0.0.nupkg
我无法让我的正则表达式在 MSBuild 中工作(这是我真正需要它的地方)。
在 C# 中正常工作:
var input = @"Es wird versucht, das Paket aus ""Amusoft.EventManagement.csproj"" zu erstellen.;Paketerstellung der Dateien aus ""D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release"".;""Amusoft.EventManagement.nuspec"" wird für Metadaten verwendet.;Das Paket ""D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg"" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für ""Amusoft.EventManagement.csproj"" zu erstellen.;Paketerstellung der Dateien aus ""D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release"".;""Amusoft.EventManagement.nuspec"" wird für Metadaten verwendet.;Das Paket ""D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg"" wurde erfolgreich erstellt.";
var m = Regex.Match(input, "(?<=\")[^\"]+nupkg(?=\")");
returns D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg
这正是我想要的。但是我无法在 MSBuild 中return任何东西,这是我需要它的地方。
MSBuild 尝试让它工作:
<Target Name="AfterBuild" Condition="'$(Configuration)' == 'Release'">
<!-- Ensure Directory + Package project-->
<MakeDir Directories="$(SolutionDir)build$(ProjectName)$(Configuration)\"/>
<Exec ConsoleToMSBuild="true" Command="nuget pack $(ProjectPath) -Symbols -Prop Configuration=Release -OutputDirectory $(SolutionDir)build$(ProjectName)$(Configuration)" >
<Output TaskParameter="ConsoleOutput" ItemName="NugetPackOutput"/>
</Exec>
<!-- Prepare pushing process -->
<Message Importance="High" Condition="!Exists('$(ProjectDir)nugetapikey.txt')" Text="nugetapikey.txt does not exist." />
<ReadLinesFromFile Condition="Exists('$(ProjectDir)nugetapikey.txt')" File="$(ProjectDir)nugetapikey.txt">
<Output TaskParameter="Lines" ItemName="NugetApiKey"/>
</ReadLinesFromFile>
<Message Importance="High" Condition="Exists('$(ProjectDir)nugetapikey.txt')" Text="NugetApiKey is '@(NugetApiKey)'" />
<PropertyGroup>
<NugetPackageFileName2>$([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), `(?<=")[^"]+nupkg(?=")`))</NugetPackageFileName2>
<NugetPackageFileName>$([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), `(?<=")[^"]+.nupkg(?=")`))</NugetPackageFileName>
<NugetPushCommand>nuget push PICKNAMEINEXPLORER $(NugetPackageFileName) -ApiKey @(NugetApiKey) -Timeout 60 -Verbosity normal</NugetPushCommand>
</PropertyGroup>
<Message Importance="High" Text="Pushcommand is $(NugetPushCommand)" />
<Message Importance="High" Text="Pack Output is @(NugetPackOutput)" />
<Message Importance="High" Text="NugetPackageFileName is $(NugetPackageFileName)" />
<Message Importance="High" Text="NugetPackageFileName2 is $(NugetPackageFileName2)" />
<Message Importance="High" Text="Regex1 is $([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), '.+'))" />
<Message Importance="High" Text="Regex2 is $([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), `.+`))" />
<Message Importance="High" Text="Regex3 is $([System.Text.RegularExpressions.Regex]::Match(@(NugetPackOutput), '(?<=")[^"]+nupkg(?=")'))" />
<WriteLinesToFile Condition="Exists('$(ProjectDir)nugetapikey.txt')" File="$(SolutionDir)build$(ProjectName)$(Configuration)\pushcommand.txt" Lines="$(NugetPushCommand)" Overwrite="true" Encoding="Unicode"/>
<Exec ConsoleToMSBuild="true" ContinueOnError="true" IgnoreExitCode="true" Command="explorer.exe $(SolutionDir)build$(ProjectName)$(Configuration)" />
</Target>
结果:
NugetPackageFileName is
1> NugetPackageFileName2 is
1> Regex1 is Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wurde erfolgreich erstellt.
1> Regex2 is Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wurde erfolgreich erstellt.
1> Regex3 is
1> Regex3 is
.+
和 '.+' 试图验证内联正则表达式是否有效 - 事实就是如此。但是,任何通过正则表达式获取值的实际尝试都会失败。
基本上我想在这里做的是有一个构建脚本(当我完成后)将打开一个控制台window,其中包含一个预填充命令以将包推送到 nuget,而不会删除我的 apikey在来源 control/csproj 中。除了获得我的 Regex 值之外,其余的已经在以前的版本中工作了。
问题:
有谁知道我在 Regex 的 MSBuild 版本中做错了什么?
这里的问题不在于正则表达式。 Match
期望 String
并且它适用于 Properties
,但不适用于 Items
.
您需要更改 Exec
的输出类型(见下文),然后参考 $(NugetPackOutput)
而不是 @(NugetPackOutput)
。
之前
<Output TaskParameter="ConsoleOutput" ItemName="NugetPackOutput"/>
之后
<Output TaskParameter="ConsoleOutput" PropertyName="NugetPackOutput"/>
这是一个证明这一点的测试。注意在 MatchItem2
的情况下,正则表达式实际上匹配 ItemName
而不是输出。
test.bat
@ECHO off
ECHO Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erstellt.;Es wird versucht, das Symbolpaket für "Amusoft.EventManagement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird für Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wurde erfolgreich erstellt.
BuildApp.csproj
<Target Name="Test">
<Exec ConsoleToMSBuild="true" Command="test.bat">
<Output TaskParameter="ConsoleOutput" ItemName="OutputItem" />
<Output TaskParameter="ConsoleOutput" PropertyName="OutputProperty" />
</Exec>
<Message Text="OutputItem: @(OutputItem)" />
<Message Text="---" />
<Message Text="OutputProperty: $(OutputProperty)" />
<Message Text="---" />
<Message Text="MatchItem1: $([System.Text.RegularExpressions.Regex]::Match(@(OutputItem), '.+'))" />
<Message Text="---" />
<Message Text="MatchItem2: $([System.Text.RegularExpressions.Regex]::Match(@(OutputItem), '.{5}'))" />
<Message Text="---" />
<Message Text="MatchItem3: $([System.Text.RegularExpressions.Regex]::Match(@(OutputItem), '(?<=")[^"]+nupkg(?=")'))" />
<Message Text="---" />
<Message Text="MatchProperty: $([System.Text.RegularExpressions.Regex]::Match($(OutputProperty), '(?<=")[^"]+nupkg(?=")'))" />
</Target>
测试输出
Test:
test.bat
Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj" zu erstellen
.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventManagement\Amu
soft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspec" wird f?r
Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManagement\build\
Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfolgreich erst
ellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventManagement.csproj"
zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventMa
nagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspe
c" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManag
ement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbols.nupkg" wu
rde erfolgreich erstellt.
OutputItem: Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj"
zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventMa
nagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspe
c" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManag
ement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfo
lgreich erstellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventManagem
ent.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amu
soft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventMana
gement.nuspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusof
t.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbo
ls.nupkg" wurde erfolgreich erstellt.
---
OutputProperty: Es wird versucht, das Paket aus "Amusoft.EventManagement.cspr
oj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.Eve
ntManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.n
uspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventM
anagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde
erfolgreich erstellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventMan
agement.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft
\Amusoft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.Event
Management.nuspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Am
usoft.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.s
ymbols.nupkg" wurde erfolgreich erstellt.
---
MatchItem1: Es wird versucht, das Paket aus "Amusoft.EventManagement.csproj"
zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amusoft.EventMa
nagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventManagement.nuspe
c" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusoft.EventManag
ement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.nupkg" wurde erfo
lgreich erstellt.;Es wird versucht, das Symbolpaket f?r "Amusoft.EventManagem
ent.csproj" zu erstellen.;Paketerstellung der Dateien aus "D:\SVN\Amusoft\Amu
soft.EventManagement\Amusoft.EventManagement\bin\Release".;"Amusoft.EventMana
gement.nuspec" wird f?r Metadaten verwendet.;Das Paket "D:\SVN\Amusoft\Amusof
t.EventManagement\build\Amusoft.EventManagement\Release\WeakEvent.2.0.0.symbo
ls.nupkg" wurde erfolgreich erstellt.
---
MatchItem2: @(Out
---
MatchItem3:
---
MatchProperty: D:\SVN\Amusoft\Amusoft.EventManagement\build\Amusoft.EventMana
gement\Release\WeakEvent.2.0.0.nupkg