2017-06-02 29 views
7

我有UWP應用程序並使用Akavache。加入MobileCenter的NuGet包後,我有這個問題蒙山建築應用:在UWP項目中使用Akavache + Mobile Center時出現錯誤

Payload contains two or more files with the same destination path 'SQLitePCLRaw.batteries_v2.dll'. 
Source files:C:\Users\user\.nuget\packages\SQLitePCLRaw.bundle_e_sqlite3\1.1.0\lib\uap10.0\SQLitePCLRaw.batteries_v2.dll 
C:\Users\user\.nuget\packages\SQLitePCLRaw.bundle_green\1.1.2\lib\uap10.0\SQLitePCLRaw.batteries_v2.dll 

我怎樣才能修復它不刪除Akavache或VSMC?

+0

能否請您提高對Eric的一個攝製Sqlite PclRaw回購請。 –

+0

我會調查這一點。我有一個體面的想法是什麼問題,但我還不知道最好的解決方案是什麼。 –

+1

順便說一句,repro很簡單。文件新的UWP空白應用程序。添加nuget軟件包Microsoft.Azure.Mobile和akavache。建立。 –

回答

4

基於@Eric Sink評論,我試圖排除移動中心的重複DLL,據我所知,移動中心可以正常使用Akavache sqlite依賴項。儘管我在運行時沒有測試過Akavache。

我使用project.json這個工作對我來說:

"SQLitePCLRaw.bundle_green": { 
    "version": "1.1.2", 
    "exclude": "all" 
} 

dependencies對象。

+0

我沒有project.json(VS2017)所有的依賴* .csproj,但該文件不包含SQLitePCLRaw.bundle_green。 –

+0

你可以上傳packages.config和csproj的某處嗎? –

+0

根據我的測試,排除功能在UWP csproj中不適用於PackageReference。我認爲VS2017支持舊的project.json的東西爲了向後兼容的目的,所以也許如果該項目手動更改... –

0

使用消耗nugets的PackageReference技術的documentation表示使用Exclude="All"標誌

不幸的是,文件是錯誤的,因爲強調了這github issue你INFACT需要使用ExcludeAssets="All"

因此成品會看起來像

<PackageReference Include="SQLitePCLRaw.bundle_green" Version="1.1.9" ExcludeAssets="All" />

相關問題