我搜索了互联网的深度,我找不到这个问题的答案或解决方法。我不知道是什么导致它。
我一直在Xamarin Studio中收到错误:
Error: Error building target GetReferenceAssemblyPaths: UNC paths should be of the form \\server\share.
有人可以向我解释一下吗?
以下是其中一个项目文件的链接: http://pastebin.com/qZ5uGL9S
答案 0 :(得分:1)
如果您检查项目文件,则在某些FXCopy规则路径中有一些额外的反斜杠,即
<CodeAnalysisRuleSetDirectories>;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools**\\**Rule Sets</CodeAnalysisRuleSetDirectories>
<CodeAnalysisRuleDirectories>;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop**\\**Rules</CodeAnalysisRuleDirectories>
<CodeAnalysisRuleSetDirectories>;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools**\\**Rule Sets</CodeAnalysisRuleSetDirectories>
<CodeAnalysisRuleDirectories>;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop**\\**Rules</CodeAnalysisRuleDirectories>
编译器可能将它们作为UNC路径选择,用一个反斜杠替换它们,它应该编译好。
答案 1 :(得分:0)
我 UnChecked use MSBuild
并修复此问题。
答案 2 :(得分:0)
当我在Microsoft Visual Studio 2012中创建项目时,我选择了TargetFrameworkVersion 3.5。 Visual Studio 2012使用 ToolsVersion =“4.0”创建项目文件。显然Mono安装(我的3.2.3)并没有很好地消化4.0工具集。所以我在记事本中打开了我的csproj文件并将其更改为 ToolsVersion =“3.5”。它解决了这个问题。
注意:TargetFrameworkVersion和ToolsVersion是两回事。 ToolsVersion指定在构建项目时使用的MSBuild工具的版本,而TargetFrameworkVersion是要作为目标的.NET Framework的版本。
答案 3 :(得分:0)
有点不相关,但是在构建同事的旧Visual Studio项目时,我立即收到了类似的错误:
Error: Failed to write to log file "\\projName.log". The UNC path should be of the form \\server\share.
我通过更改“项目配置属性” “构建日志文件” 字段进行了修复。它的变量不正确,被评估为空白:
$(IntDir)\$(MSBuildProjectName).log
修复此问题,使构建可以完美运行。也许这会对某人有所帮助,或者我可以打开一个新问题并回答。