我有一个Xamarin Forms(1.3-pre1)应用程序,需要与Office 365集成。在我的Android项目中,当我在subject(https://www.nuget.org/packages/Microsoft.Office365.OAuth.Xamarin/)中引用NuGet包时,我的构建中断了
在引用此包之后,我在构建结束时遇到以下错误:
3> UNEXPECTED TOP-LEVEL EXCEPTION:
3> java.lang.IllegalArgumentException: already added: Landroid/support/v4/util/TimeUtils;
3> at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:122)
3> at com.android.dx.dex.file.DexFile.add(DexFile.java:161)
3> at com.android.dx.command.dexer.Main.processClass(Main.java:732)
3> at com.android.dx.command.dexer.Main.processFileBytes(Main.java:673)
3> at com.android.dx.command.dexer.Main.access$300(Main.java:82)
3> at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:602)
3> at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284)
3> at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
3> at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
3> at com.android.dx.command.dexer.Main.processOne(Main.java:632)
3> at com.android.dx.command.dexer.Main.processAllFiles(Main.java:510)
3> at com.android.dx.command.dexer.Main.runMonoDex(Main.java:279)
3> at com.android.dx.command.dexer.Main.run(Main.java:245)
3> at com.android.dx.command.dexer.Main.main(Main.java:214)
3> at com.android.dx.command.Main.main(Main.java:106)
3> 1 error; aborting
3>C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1243,3): error MSB6006: "java.exe" exited with code 1.
3>Done executing task "CompileToDalvik" -- FAILED.
3>Done building target "_CompileDex" in project "KwhApp.Forms.Android.csproj" -- FAILED.
3>
3>Build FAILED.
删除软件包引用,我将完成构建。
是否有同样的问题?有什么建议吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
更新android包之后我遇到了这个问题。
我的解决方案是在Android项目中打开packages.config并从xml中删除android support v4:
<package id="Xamarin.Android.Support.v4" version="23.3.0" targetFramework="monoandroid70" />
之后,我去包文件夹。并从nuget再次添加它。当我这样做时,添加了新的Android软件包。并且项目构建并再次运行。
希望得到这个帮助。