Ars*_*nko 5 msbuild stylecop visual-studio-2015
我尝试将 StyleCop 集成到 Visual Studio 解决方案中。我宁愿避免在每个开发人员的每台机器上安装 StyleCop。我多次看到的建议(示例)是在项目中包含 StyleCop 的二进制文件,将它们存储在版本控制中。
我就是这么做的。它在我的机器上工作,但在没有安装 StyleCop 的另一台机器上失败。在我的机器上卸载 StyleCop 后,它也无法在那里工作。
错误消息如下:
严重性代码描述项目文件行错误无法从程序集 C:\Program Files (x86)\MSBuild..\StyleCop 4.7\StyleCop.dll 加载“StyleCopTask”任务。无法加载文件或程序集“file:///C:\Program Files (x86)\StyleCop 4.7\StyleCop.dll”或其依赖项之一。该系统找不到指定的文件。确认声明正确,程序集及其所有依赖项都可用,并且任务包含实现 Microsoft.Build.Framework.ITask 的公共类。演示
这是我在每个 .csproj 文件中包含的内容:
<Import Project="$(SolutionDir)\externs\Microsoft.StyleCop\StyleCop.targets" />
Run Code Online (Sandbox Code Playgroud)
该目录C:\demo\externs\Microsoft.StyleCop包含:
来自C:\Program Files (x86)\StyleCop 4.7,的所有文件的副本
的副本C:\Program Files (x86)\MSBuild\StyleCop\v4.7\StyleCop.Targets。
怎么了?
似乎StyleCop.Targets包含绝对路径:
<UsingTask
AssemblyFile="$(MSBuildExtensionsPath)\..\StyleCop 4.7\StyleCop.dll"
TaskName="StyleCopTask"/>
Run Code Online (Sandbox Code Playgroud)
为了能够在未安装应用程序的计算机上使用 StyleCop,请将此路径更改为类似于以下内容的路径:
<UsingTask
AssemblyFile="$(SolutionDir)\externs\Microsoft.StyleCop\StyleCop.dll"
TaskName="StyleCopTask"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5891 次 |
| 最近记录: |