gpt4 book ai didi

.net - 从命令行调用 MSBuild 时转义 DisabledWarnings 的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-01 12:51:31 26 4
gpt4 key购买 nike

我试过在参数中像这样转义分号:

/fileLoggerParameters:logfile = mmsbuild.log; append; performancesummary; disabledwarnings = 1%3B2; %3BBC42025%3BBC42104;WarningLevel=0;VbcVerbosity=Quiet/property:DisabledWarnings=1%3B2%3B3%3B40003%3B40055%3B42020%3B42021%3B42022%3B42025%3B42104%3BBC40003%3BBC40055%3BBC42020%3BBC42021%3BBC42022%3BBC42025%3BBC42104 ;WarningLevel=0;VbcVerbosity=Quiet

但在我的日志中它仍然显示为已转义:

   Task "MSBuild"
Global Properties:
Configuration=Release
DebugSymbols=false
DisabledWarnings=1%3b2%3b3%3b40003%3b40055%3b42020%3b42021%3b42022%3b42025%3b42104%3bBC40003%3bBC40055%3bBC42020%3bBC42021%3bBC42022%3bBC42025%3bBC42104
Optimize=true
WarningLevel=0
VbcVerbosity=Quiet

我正在尝试抑制我不关心的此类警告(来自 aspnet_compiler.exe,我假设它在后台使用 vbc.exe) :

  • 警告 BC42020:没有“As”子句的变量声明;类型
    假定的对象。
  • 警告 BC42021:没有“As”子句的函数;
    假定的对象的返回类型。
  • 警告 BC42022:属性没有
    “作为”条款;假定的对象类型。
  • 等等

更新:现在我不确定用引号转义是否有效。我仍然收到警告,并且我尝试了 NoWarnDisabledWarnings/verbosity:quietWarningLevel=0VbcVerbosity=Quiet 似乎没有什么可以抑制它们。

更新 2:这是完整的构建命令:

C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe /nologo /consoleloggerparameters:PerformanceSummary /verbosity:quiet /fileLogger /fileLoggerParameters:LogFile=msbuild.log;Append;PerformanceSummary;VbcVerbosity=Quiet;DisabledWarnings="40003;40055;42020;42021;42022;42025;42104;BC40003;BC40055;BC42020;BC42021;BC42022;BC42025;BC42104";WarningLevel=0;NoWarn="40003;40055;42020;42021;42022;42025;42104;BC40003;BC40055;BC42020;BC42021;BC42022;BC42025;BC42104" /target:JustWebSite /maxcpucount:3 "Build.proj"

和 Build.proj:

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="JustWebSite" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">

<UsingTask TaskName="Microsoft.Build.Tasks.CreateTemporaryVCProject" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.ResolveVCProjectOutput" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

<PropertyGroup>
<SolutionName>WebSiteX</SolutionName>
<ProjectFolder>D:\Projects\$(SolutionName)</ProjectFolder>
<VirtualPath>\</VirtualPath>

<AspNetConfiguration>Release</AspNetConfiguration>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<AspNetVirtualPath>$(VirtualPath)</AspNetVirtualPath>
<AspNetPhysicalPath>$(ProjectFolder)\$(SolutionName)\</AspNetPhysicalPath>
<AspNetTargetPath>PrecompiledWeb\$(SolutionName)\</AspNetTargetPath>
<AspNetForce>true</AspNetForce>
<AspNetUpdateable>true</AspNetUpdateable>
<AspNetDebug>False</AspNetDebug>
<AspNetKeyFile></AspNetKeyFile>
<AspNetKeyContainer></AspNetKeyContainer>
<AspNetDelaySign></AspNetDelaySign>
<AspNetAPTCA></AspNetAPTCA>
<AspNetFixedNames>false</AspNetFixedNames>
<AspNetTargetPath Condition=" '$(OutDir)' != '' ">$(OutDir)_PublishedWebsites\$(SolutionName)\</AspNetTargetPath>
</PropertyGroup>


<Target Name="GetFrameworkPathAndRedistList">
<GetFrameworkPath>
<Output TaskParameter="Path" ItemName="_CombinedTargetFrameworkDirectoriesItem" Condition="'$(MSBuildToolsVersion)' == '2.0'" />
<Output TaskParameter="FrameworkVersion35Path" ItemName="_CombinedTargetFrameworkDirectoriesItem" Condition=" '$(TargetFrameworkVersion)' == 'v3.5' and '$(MSBuildToolsVersion)' != '2.0'" />
<Output TaskParameter="FrameworkVersion30Path" ItemName="_CombinedTargetFrameworkDirectoriesItem" Condition=" ('$(TargetFrameworkVersion)' == 'v3.0' or '$(TargetFrameworkVersion)' == 'v3.5') and '$(MSBuildToolsVersion)' != '2.0'" />
<Output TaskParameter="FrameworkVersion20Path" ItemName="_CombinedTargetFrameworkDirectoriesItem" Condition=" ('$(TargetFrameworkVersion)' == 'v2.0' or '$(TargetFrameworkVersion)' == 'v3.0' or '$(TargetFrameworkVersion)' == 'v3.5') and '$(MSBuildToolsVersion)' != '2.0'" />
</GetFrameworkPath>
<CreateItem Include="@(_CombinedTargetFrameworkDirectoriesItem->'%(Identity)\RedistList\*.xml')">
<Output TaskParameter="Include" ItemName="InstalledAssemblyTables" />
</CreateItem>
</Target>

<Target Name="JustWebSite" DependsOnTargets="GetFrameworkPathAndRedistList">
<Message Text="Just building website..." />

<CombinePath BasePath="$(AspNetPhysicalPath)" Paths="@(References_ReferenceRelPath)">
<Output TaskParameter="CombinedPaths" ItemName="References" />
</CombinePath>

<Copy SourceFiles="@(References->'%(FullPath)')" DestinationFolder="$(AspNetPhysicalPath)\Bin\" Condition="!Exists('%(References.Identity)')" ContinueOnError="true" SkipUnchangedFiles="true" />

<ResolveAssemblyReference Assemblies="@(References->'%(FullPath)')" TargetFrameworkDirectories="@(_CombinedTargetFrameworkDirectoriesItem)" InstalledAssemblyTables="@(InstalledAssemblyTables)" SearchPaths="{RawFileName};{TargetFrameworkDirectory};{GAC}" FindDependencies="true" FindSatellites="true" FindSerializationAssemblies="true" FindRelatedFiles="true" Condition="Exists('%(References.Identity)')">
<Output TaskParameter="CopyLocalFiles" ItemName="References_CopyLocalFiles" />
</ResolveAssemblyReference>

<Copy SourceFiles="@(References_CopyLocalFiles)" DestinationFiles="@(References_CopyLocalFiles->'$(AspNetPhysicalPath)\Bin\%(DestinationSubDirectory)%(Filename)%(Extension)')" Condition="(false) or ('$(AspNetConfiguration)' == 'Debug') or ('$(AspNetConfiguration)' == 'Release')" SkipUnchangedFiles="true" />

<AspNetCompiler VirtualPath="$(AspNetVirtualPath)" PhysicalPath="$(AspNetPhysicalPath)" TargetPath="$(AspNetTargetPath)" Force="$(AspNetForce)" Updateable="$(AspNetUpdateable)" Debug="$(AspNetDebug)" KeyFile="$(AspNetKeyFile)" KeyContainer="$(AspNetKeyContainer)" DelaySign="$(AspNetDelaySign)" AllowPartiallyTrustedCallers="$(AspNetAPTCA)" FixedNames="$(AspNetFixedNames)" Condition="(false) or ('$(AspNetConfiguration)' == 'Debug') or ('$(AspNetConfiguration)' == 'Release')" />

</Target>
</Project>

最佳答案

按如下方式填充 NoWarn 属性:

msbuild your.vbproj /p:NoWarn="40003,40055,42020,42021,42022,42025,42104,40003,40055"

关于.net - 从命令行调用 MSBuild 时转义 DisabledWarnings 的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9642612/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com