2016-09-23 44 views
10

我升級到最新的Xamarin for Visual Studio 2015(Community Edition),重新編譯我的項目,檢查了一些小的代碼更改,並且我的VSTS生成服務器失敗與此錯誤消息:錯誤CS1703:已導入多個具有等效標識的程序集 - Xamarin + VSTS

[錯誤] CSC(0,0):錯誤CS1703:具有等效 身份多重組件已經被輸入:C:\程序文件(x86)\參考 組件\微軟\ Framework \ MonoAndroid \ v1.0 \ mscorlib.dll'和 'C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ mscorlib.dll'。刪除 重複引用之一。

互聯網搜索幾乎沒有返回關於這個問題的詳細信息,在VSTS和Xamarin中沒有任何有價值的信息。

,我認爲有關這一問題的唯一的代碼改變是由Visual Studio項目文件中完成:

enter image description here

我只開發Android,是對Xamarin 4.2,並使用JDK 8 u101。

任何想法如何解決這個問題?

回答

27

我剛剛解決了這個問題。嘗試從您的解決方案本身內的參考文件夾中刪除mscorlib.dll。請參閱下面高亮顯示的文件夾(參考文件夾)。看起來Xamarin在構建時會默認包含mscorlib.dll。希望它能幫助:)

enter image description here

+0

這真的有用嗎? –

+1

@biplabrout是的,它的確如此。至少對於我的情況:) – DriLLFreAK100

+0

不,它沒有工作。刪除後,它開始顯示其他錯誤。 Resource.designer.cs –

4

我必須安裝.NET核心的NuGet,其中明確安裝所有系統錯誤。*庫。原來,我的Microsoft.Net.Compilers包需要升級,然後這個錯誤消失了。

1

我通過將7.1更改爲6.0而解決了這個問題,編譯再次開始。這個問題只出現在我的編譯代理:

Compilation settings

0

我更新了所有微軟包和編譯器錯誤就走開了。 所以我認爲這種編譯器錯誤的一般解決方案分爲兩步:

  1. 升級涉及的NuGet包;
  2. 如果第一步不足,請升級所有Microsoft NuGet軟件包。
0

在我的情況下,我在其中一個引用的項目中有一個軟件包引用「Microsoft.NETCore.Portable.Compatibility」。我將其刪除,併成功構建了Android和iOS項目。

相關問題