【问题标题】:Xamarin - Metadata file .../AWSSDK.SecurityToken.CodeAnalysis.dll could not be foundXamarin - 元数据文件 .../AWSSDK.SecurityToken.CodeAnalysis.dll 找不到
【发布时间】:2017-11-06 21:57:33
【问题描述】:

我正在尝试在我的 Xamarin 应用程序中实现离线同步功能。我已经安装了 Nuget 包:

  • AWSSDK.SecurityToken
  • AWSSDK.SimpleDB
  • AWSSDK.CognitoSync
  • AWSSDK.CognitoIdentity

当我尝试重建我的应用程序时收到此错误

Severity Code Description Project File Line Suppression State Error CS0006 Metadata file '..\..\packages\AWSSDK.SecurityToken.3.3.2\analyzers\dotnet\cs\AWSSDK.SecurityToken.CodeAnalysis.dll' could not be found

【问题讨论】:

    标签: c# amazon-web-services amazon-s3 aws-sdk offline-caching


    【解决方案1】:

    对我来说,我必须卸载错误的项目并编辑 .csproj 以获得正确的路径,如下所示:

    <ItemGroup>
        <Analyzer Include="..\packages\AWSSDK.S3.3.3.10\analyzers\dotnet\cs\AWSSDK.S3.CodeAnalysis.dll" />
    </ItemGroup>
    

    【讨论】:

    • @MartinS 在您的解决方案中查找丢失的 dll(或从某处获取该 dll)并在此处设置路径。可能你已经更新了这个包的版本(例如来自 nuget),这个路径是指旧版本。
    【解决方案2】:

    我认为问题在于通过 AWSToolkitPackage.vsix 安装的默认 AWS 模板创建了对代码分析器 dll 的引用,就好像为解决方案创建了一个单独的目录一样。

    简单的解决方法是消除文件系统引用 NuGet 包的点之一。我不必关闭解决方案或任何东西,只需在您喜欢的文本编辑器中打开受影响的项目文件(可能是 *.csproj)并找到包参考。

    不好:

      ..\packages\AWSSDK.EC2.3.3.19\analyzers\dotnet\cs\AWSSDK.EC2.CodeAnalysis.dll
    

    为我工作:

       .\packages\AWSSDK.EC2.3.3.19\analyzers\dotnet\cs\AWSSDK.EC2.CodeAnalysis.dll 
    

    在我的例子中,有三个单独的包需要更正它们的路径。请注意,一旦我升级到最新版本的“awssdk”NuGet 包,分析器本身就会从项目的参考中删除。

    这让我觉得替代解决方案是简单地更新所有 NuGet 包引用,而不必担心编辑 csproj 文件。

    【讨论】:

      猜你喜欢
      • 2022-10-20
      • 2010-11-28
      • 2015-05-13
      • 2018-10-05
      • 1970-01-01
      • 1970-01-01
      • 2019-06-30
      • 1970-01-01
      相关资源
      最近更新 更多