【问题标题】:Xamarin Studio Error MSB4018: The "ConvertResourcesCases" task failed unexpectedlyXamarin Studio 错误 MSB4018:“ConvertResourcesCases”任务意外失败
【发布时间】:2016-01-11 03:30:02
【问题描述】:

我在尝试构建我的解决方案时遇到以下错误。我正在尝试更新几个月未触及的现有项目。它在我的电脑中的位置没有改变。

C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(2,2): Error MSB4018: The "ConvertResourcesCases" task failed unexpectedly.
System.IO.FileNotFoundException: Could not find file 'obj\Debug\res\anim\slide_out_left.xml'.
File name: 'obj\Debug\res\anim\slide_out_left.xml'
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite, Boolean checkHost)
at System.IO.File.Copy(String sourceFileName, String destFileName, Boolean overwrite)
at Xamarin.Android.Tools.Files.CopyIfChanged(String source, String destination)
at Xamarin.Android.Tasks.ConvertResourcesCases.FixupResources(ITaskItem item, Dictionary2 acwMap)
at Xamarin.Android.Tasks.ConvertResourcesCases.FixupResources(Dictionary2 acwMap)
at Xamarin.Android.Tasks.ConvertResourcesCases.Execute()
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__20.MoveNext() (MSB4018) (TekaTekiMalaysia.Droid)

我从另一个线程中读到我必须通过文件资源管理器“取消阻止”文件,但在属性下我无法使用此类选项。

我还尝试将解决方案移至文件夹树上的不同文件夹。

我还尝试通过授予 Full Control 权限来更改文件夹属性。

我正在使用 Xamarin Studio 来构建项目。任何想法是什么导致了这个问题?

【问题讨论】:

  • 你能在 Xamarin Studio 之外打开 obj\Debug\res\anim\slide_out_left.xml 吗?
  • slide_out_left.xmlobj\Debug\res\anim` but I can open it from its original location which is Resources\anim` 中丢失,没有问题。每次我重新构建解决方案时,都会报告找不到不同的文件并且构建失败。
  • 您使用的是哪个版本的 Xamarin Studio?如果您删除obj\Debug 文件夹会发生什么情况?
  • 我使用的是版本 5.10.1(构建 6)。如果我删除obj\Debug,它将在下一次构建操作中重新创建。

标签: c# xamarin cross-platform xamarin-studio


【解决方案1】:

删除 bin 和调试文件夹/更改解决方案目录名称无效,我通过将解决方案从“C:\Users\Dell PC\Desktop\studies\SampleProjects\Xamarin\XamarinFCM”移动到“C:\XamarinSamples”解决了这个问题\XamarinFCM"

我觉得 xamarin 解决方案需要更短的目录路径。不知道微软为什么会留下这种错误。

【讨论】:

    【解决方案2】:

    好的,我终于想通了。为了那些遇到同样问题的人的利益,这是我解决它的方法。是根解决方案文件夹中的非英文字符引起的。

    例如我原来的解决方案位置是

    D:\Users\OneDrive\Dev\Xamarin\TekaTeki3\TekaTeki3\
    

    我创建了一个新文件夹并将该文件夹从 TekaTeki3 重命名为 TekaTekiTiga。现在它可以正确编译了!

    D:\Users\OneDrive\Dev\Xamarin\TekaTekiTiga\TekaTeki3\
    

    【讨论】:

      【解决方案3】:

      我通过清理我的解决方案、删除我的 .Droid 项目中的 obj 和 bin 目录并重建来解决此问题。

      【讨论】:

        【解决方案4】:

        我想有一个错误,但这里有一个解决方法:

        错误告诉我们找不到目录。

        手动创建目录,然后重建。 将有 3 个新的丢失目录投诉 - 只需手动创建这些目录即可。

        Rebuild-All 现在应该可以工作了。

        【讨论】:

        • 目录没有丢失,它们已经存在。尽管如此,我还是尝试重新创建它们并从原始内容中复制内容并删除原始内容。但问题依然存在。
        【解决方案5】:

        对我来说这个解决方案有效,我只缩短了解决方案的路径,例如,

        以前是

        D:\Projects\Xamarin_Projects\Git_Test\WCP_Solution

        我将项目位置转移到较短的路径,例如

        D:\Projects\WCP_Solution

        因为安卓有字数限制的解决方案

        【讨论】:

          【解决方案6】:

          我也遇到了同样的问题。修复是在根文件夹中添加“READ & WRITE”并**重建**项目。

          【讨论】:

          • 不起作用。删除 bin 和 obj 文件夹可以修复,但我不认为这是一个可接受的解决方案,因为这个问题每天都会发生很多次,我无法在每次构建时都删除它们。
          猜你喜欢
          • 1970-01-01
          • 2016-10-02
          • 2011-10-06
          • 1970-01-01
          • 2016-02-23
          • 1970-01-01
          • 1970-01-01
          • 2021-08-31
          • 2021-03-22
          相关资源
          最近更新 更多