我正在尝试使用Xamarin中的xbuild实现持续集成。我知道xbuild使用.csproj文件来编译应用程序。我想从csproj文件中打印变量'IpaPackagePath'和'OutputPath'的值。我认为(?)xbuild与msbuild类似。在msbuild中,打印值的方法是使用Message任务 以下文件部分
<PropertyGroup>
<CreateIpaDependsOn>
$(CreateIpaDependsOn);
DisplayMessages
</CreateIpaDependsOn>
</PropertyGroup>
<Target Name="DisplayMessages">
<Message Text="IPAPACKAGEPATH = $(IpaPackagePath)" />
<Message Text="OUTPUTPATH = $(OutputPath)" />
</Target>
<Target Name="CopyIpa"
Condition="'$(OutputType)' == 'Exe'
And '$(ComputedPlatform)' == 'iPhone'
And '$(BuildIpa)' == 'true'">
<Copy
SourceFiles="$(IpaPackagePath)"
DestinationFolder="$(OutputPath)"/>
</Target>
我没有在控制台上打印任何消息或执行任何目标名称“DisplayMessages”。 我错了什么?
或者是否有任何方法可以在xbuild中打印变量的值?
答案 0 :(得分:0)
我在Message Text
(以及xbuild
的OS-X版本)中使用msbuild
。
确保/verbosity:
设置为至少minimal
,因为quiet
将取消Message Text
输出。
xbuild /p:SolutionDir=~/ /target:VIEWENV Droid/Realm080.Droid.csproj
<!-- PlayScript -->
<Target Name="VIEWENV" DependsOnTargets="BeforeResolveReferences">
<Message Text=" CscToolExe: $(CscToolExe) "/>
<Message Text=" CscToolPath: $(CscToolPath) "/>
<Message Text=" ReferencePath: $(ReferencePath) "/>
<Message Text=" ToolsPath: $(ToolsPath) "/>
<Message Text=" TargetFrameworkDirectory: $(TargetFrameworkDirectory) "/>
~~~
</Target>
注意:存在于.target
中引用的.csproj
文件或.csproj
中直接包含的文件中
VIEWENV:
CscToolExe: mcs.exe
CscToolPath:
ReferencePath:
ToolsPath: