我正在尝试使用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中变量的值?
发布于 2016-11-02 10:46:09
我在Message Text中使用xbuild (以及OS版本的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:https://stackoverflow.com/questions/40377007
复制相似问题