我读了很多问题,但我找不到合适的答案。
当我尝试在VS2012中编译项目时,我得到了这个结果:
命令“.... \ tools \ bin \ nuget pack Packages \ Lib.Html.nuspec - OutputDirectory .... \ bin \ Zip \ Packages -NoPackageAnalysis”退出,代码为1。
我在我的.csproj文件中查找了代码行,其中错误应该是,并且有:
<Exec Command="$(ProjectDir)..\..\tools\bin\nuget pack $(ProjectDir)Packages\Lib.Html.nuspec -OutputDirectory $(OutputPath)Packages -NoPackageAnalysis" />
我做错了什么?
[编辑] 启动该项目的调试并忽略“构建错误”,我有一个新警报:
“Visual Studio无法启动调试,因为缺少调试目标'[project.exe path]'。 请构建项目并重试,或者相应地设置OutputPath和AssemblyName属性以指向目标程序集的正确位置。“
答案 0 :(得分:99)
第一步是弄清楚错误究竟是什么。为此,请将MsBuild输出扩展为诊断。这将显示执行的实际命令,并希望完整的错误消息
答案 1 :(得分:22)
右键点击项目 - &gt;属性 - &gt;建立活动
删除构建后事件命令行文本块中的文本
答案 2 :(得分:2)
对我来说:我的路径文件夹名称G:\Other Imp Projects\Mi.....
中有一个空格
从文件夹中删除空白
示例:Other Imp Projects
->> Other_Imp_Projects
为您的路径添加引号(""
)。
示例:mkdir "$(ProjectDir)$(OutDir)Configurations"
//看到双引号
答案 3 :(得分:1)
对我来说,在VS 2013中,我不得不在UI项目(MVC)中的References下删除缺少的引用。事实证明,缺少的那些没有被引用。
答案 4 :(得分:1)
尝试以管理员身份打开Visual Studio。
答案 5 :(得分:1)
我知道这肯定为时已晚,但是,这也可能对某人有所帮助。
就我而言,我发现源文件正在由另一个进程使用,该进程限制了复制到目标位置。我发现通过使用命令提示符(只需将post build命令复制粘贴到命令提示符并执行,即可得到错误信息)。
确保可以从命令提示符下复制
答案 6 :(得分:1)
检查您的路径: 如果您要为TFS使用单独的构建服务器(最有可能),请确保.csproj文件中的所有路径都与 TFS服务器路径相匹配。当我在* .csproj文件中引用了我的开发机器路径而不是TFS服务器路径时,出现了以上错误。
删除多行命令:此外,作为预防措施,尝试将多行命令删除为xml中的单行命令。我在* .proj中有以下xml,这导致了TFS中的问题:
<Exec Condition="bl.."
Command=" Blah...
..." </Exec>
将上述xml更改为有效:
<Exec Condition="bl.." Command=" Blah..." </Exec>
答案 7 :(得分:0)
这基于JaredPar的答案...并且适用于VS2017。 Visual Studio 2017中提供了相同的“生成并运行”选项。
我正在获取,命令“ chmod + x“”“退出,代码为1
在构建输出窗口中,我搜索了“错误”,并在同一常规区域中发现了一些错误。我能够单击生成输出中的链接,发现错误涉及.targets文件中的此项:
<Target Name="ChmodChromeDriver" BeforeTargets="BeforeBuild" Condition="'$(WebDriverPlatform)' != 'win32'">
<Exec Command="chmod +x "$(ChromeDriverSrcPath)"" />
</Target>
在构建输出中,我还发现了一条更详细的错误消息,该错误消息基本上表明它在要查找的程序包文件夹中找不到Selenium.WebDriver.ChromeDriver v2.36。我检查了该项目的NuGet程序包,然后实际上,已安装软件包列表中包含版本2.36。我确实找到了2.36的软件包文件,并将文件夹,子文件夹和文件的属性从“只读”更改为“读/写”。内置,但同样失败。有时“更新”到该软件包的其他版本,然后再更新回原始版本可以解决这种类型的错误。因此,我将Manage NuGet软件包中的引用“更新”到2.37,构建失败,然后“更新”回2.36,构建,并且构建成功,没有“ chmod + x”错误消息。
我正在构建的项目基于用于Appium测试工具的Visual Studio项目模板,模板名称为“ Develop_Automated_Test”。
答案 8 :(得分:0)
我遇到了同样的问题。尝试了以上所有答案。它实际上是抱怨一个 .dll 文件。我在 Visual Studio 中清理了该项目,但 .dll 文件仍然存在,所以我从 bin 文件夹中手动删除了它并且它工作了。
答案 9 :(得分:0)
希望这对某人有所帮助,但我有预构建事件和后构建事件,它一直抱怨名为“Microsoft.Common.CurrentVersion.targets”的文件“项目中不存在目标“CoreBuild”。
>这是我为解决它所做的:
我一定以某种方式破坏了那个文件。