【发布时间】:2018-07-29 22:57:50
【问题描述】:
目前我们正在从 VS2015 切换到 VS2017。我们的升级步骤之一是从 stylecop 切换到新的 Stylecop.Analyzer 包。新的 Stylecop 使用 2 个文件。 stylecop.json 和 Stylecop.ruleset。
目标:我想将 stylecop 文件作为自定义 nuget 包提供。但我不知道如何创建所需的 .csproj 条目。
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<CodeAnalysisRuleSet>packages\My.StyleCop.1.0.0-pre15\RuleSet\My.StyleCop.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
...
<ItemGroup>
<AdditionalFiles Include="packages\My.StyleCop.1.0.0-pre15\Config\stylecop.json">
<Link>stylecop.json</Link>
</AdditionalFiles>
</ItemGroup>
</Project>
过去,有可能使用 install.ps1 脚本来做这些事情。但是对于 NuGet 3.(或 4.),安装脚本已过时,将被忽略。
我已经尝试过使用 My.StyleCop.targets:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<AdditionalFiles Include="packages\My.StyleCop.1.0.0-pre17\Config\stylecop.json">
<Link>stylecop.json</Link>
</AdditionalFiles>
</ItemGroup>
</Project>
但在这里我也有一些问题。由于 NuGet 3.(或 4.)没有解决方案范围的包文件夹,而且我不知道可以在此处使用的任何变量或占位符来获取包的绝对或相对路径。
【问题讨论】:
标签: msbuild visual-studio-2017 nuget stylecop