2017-04-24 120 views
15

我有一个基于MvvmCross的Xamarin项目。该项目用于IOS和Android.I在Visual Studio 15中打开了此项目。我收到了一些我很快解决的错误。有一些卡住的错误,即使在google和stackoverflow上搜索后,我也无法解决它们。我尝试了每一个在stackoverflow上找到的方法,但仍然存在所有的错误。 这个项目正在使用第三方库,如RestSharp和BoxApi.V2(更多)“ResolveLibraryProjectImports”任务意外失败

我在下面发布我的错误日志。

严重级代码说明项目文件行抑制状态 错误“ResolveLibraryProjectImports”任务意外失败。 System.IO.FileNotFoundException:无法加载程序集'RestSharp(Android),版本= 0.0.0.0,Culture = neutral,PublicKeyToken ='。也许它不适用于Android个人资料的Mono中? 文件名称:'RestSharp(Android).dll' at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(AssemblyNameReference reference,ReaderParameters parameters) at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(String fullName,ReaderParameters参数) 在Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(字符串全名) 在Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.GetAssembly(字符串文件名) 在Xamarin.Android.Tasks.ResolveLibraryProjectImports.Extract(DirectoryAssemblyResolver RES ,ICollection 1 jars, ICollection 1 resolvedresourceDirectories,ICollection 1 resolvedAssetDirectories, ICollection 1 resolvedEnvironments) at Xamarin.Android.Tasks.ResolveLibraryProjectImports.Execute() at Micr osoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 在Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext()BoxApi.V2(机器人)

此错误是重复对于这个解决方案中包含的所有项目。所以我多次得到这个错误。

我也想补充说,该项目以前建立在MAC和我使用的Windows,这是否使一些兼容性或跨操作系统的问题? 我已检查所有组件参考,所有工作正常。

+0

你安装了什么版本的Xamarin for Visual Studio,Xamarin.Android和Android SDK? –

+0

xamarin是最新的版本,我已经下载了所有的SDK版本 –

+0

你也许可以尝试卸载并安装受影响的nuget软件包,在这个可以RestSharp – Plac3Hold3r

回答

25

我在字面上只是在Visual Studio 2017中有一个全新的Xamarin.Forms应用程序。

根本原因似乎是我让VS2017在它的默认位置'C:\ Users \ Dave \ Documents \ Visual Studio 2017 \ Projects'中创建项目,并且这导致多个文件中的一个具有路径这太长了。

我搬到了解决我的d盘的根和它建立没有任何问题。

+0

高兴地看到你的代码工作正常 –

+0

为我工作:) –

+1

你应该获得此解决方案的诺贝尔奖!谢谢。 –

5

您的问题最有可能与Xamarin论坛上的this帖子以及this bugzilla条目相关联。如果没有一个重复的样品,我可以建议你尝试是:

  • 更新Xamarin的Visual Studio,Xamarin.Android和Xamarin.iOS 到最新的稳定版本
  • 清洗和重建
  • 删除所有从项目目录binobj文件夹
  • 重新启动Visual Studio中/你的PC

所有失败的塔如果没有可复制的样本和可能的Xamarin日志,就不可能有人能够帮助你。

+0

我已经试过这个,但我会再试一次,如果它的工作,我会接受这个答案 –

+1

这似乎不正确... – aegbert

0

这可能是一个问题,您的引用/引用程序?

如果你看看下在Solution Explorer中的每个项目的引用文件夹中,任何引用的是Visual Studio中无法找到,删除并重新添加它们(右键单击参考文件夹添加)。

0

当你创建一个新项目的Visual Studio用C创建它,我面临这个问题上其实是一个很简单的事情千百次:驱动器在默认所有你需要做的就是出来将你的项目在其他一些云端硬盘文件夹像D :, E:无论是只是确保它保存在你的驱动器的根目录,即如果你将它移动到D:然后像这样放置它D/Project/solutionFile

0

答案很简单:

  1. 移动包含您的解决方案的桌面

OR

  1. 删除引用的困扰库(参考文献部分)
  2. 目录关闭Visual Studio
  3. 在Windows资源管理器中转到到您的应用程序的项目目录(您的“Projectname”.sln文件所在的位置)。
  4. 取消隐藏隐藏项目(查看标签;查看隐藏项目)
  5. 删除“vs”隐藏文件夹,并且如果有一个名为“sou”的文件也将其删除。
  6. 重新启动Visual Studio和启动您的解决方案

我面临着同样的解决方案OP。这是OP所遇到的错误的解决方案。我已经解决了下面其他人可能出现的其他错误原因。

说明: 通常有两种不同类型的可能出现的问题。第一个包含的项目文件太长,导致System.IO.reader出现错误,包括“file.path太长”行中的一些文本。

错误的第二个原因是由于VS形成DLL的正确名称,但该项目的资源不正确的路径。一个例子可能是VS使用“App1 \ bin \ Debug \ net452 \ temp.dll”而不是“App1 \ bin \ Debug \ net1.6 \ temp.dll”。

1

有同样的问题。这里是我的解决方案

  1. 重新启动Visual Studio
  2. 打开项目
  3. 清洁液
  4. 重新生成解决方案
  5. 关闭解决方案
  6. 重新打开该项目
0

这里问题: System.IO.PathTooLongException:s特定路径,文件名或这两者太长。完全限定的文件名必须少于260个字符,且目录名称必须少于248个字符。

尝试移动你的项目到另一个位置,如“C:/”,或更改项目名称的东西更简单

0

这发生在我身上时,我无意中在一个类库,它是安装的NuGet包包括在解决方案中。我只需要从类库项目中卸载软件包。

相关问题