这里有错误,我得到:VS2013发布失败,“无法复制文件MyAppName.exe.config因为它没有发现”
无法发布,因为项目不合格打造。因为它没有发现
无法复制文件“OBJ \发布\ JobsRunner.exe.config”。
经过一小时寻找类似的问题,我发现最近的东西是一个缺少的exe文件(我有一个缺失的配置文件)的问题,我尝试了建议的解决方案,但它没有解决我的问题。
我张贴了这个问题的原因是: 一个。我仍然没有工作解决方案 b。我确实找到了一种解决方法,我想与会遇到同样问题的人分享。
我的解决方法依赖于事实,我愿意放弃我的发布配置文件,因为我已经在发布目标的一个副本,它是不是在不久的将来改变。 我所做的就是编辑.csproj的文件,在那里我找到了最后一块是原因的问题:
<!--Override After Publish to support ClickOnce AfterPublish. Target replaces the untransformed config file copied to the deployment directory with the transformed one.-->
<Target Name="AfterPublish">
<PropertyGroup>
<DeployedConfig>$(_DeploymentApplicationDir)$(TargetName)$(TargetExt).config$(_DeploymentFileMappingExtension)</DeployedConfig>
</PropertyGroup>
<!--Publish copies the untransformed App.config to deployment directory so overwrite it-->
<Copy Condition="Exists('$(DeployedConfig)')" SourceFiles="$(IntermediateOutputPath)$(TargetFileName).config" DestinationFiles="$(DeployedConfig)" />
</Target>
所以我想,问题是,发布过程中尝试覆盖一个不存在的文件或东西像那样,我删除了那个块。现在发布适合我。
我也尝试禁用ClickOnce的,因为我已经注意到这个块有关,但没有成功。
有没有人比我丑陋的解决方法有更好的解决方案? :)
感谢
如果该项目不能建则有很少有理由希望,接下来发生的事情可以工作。包括复制不存在的.config文件,因为它不能被构建。关注第一个错误,而不是最后一个错误。 –
@HansPassant,你是对的,我没有提到当我尝试构建项目,不发布它时,我的糟糕之处在于,一切都很好,没有问题。 – Alonzzo2