在打包期间Gradle重复文件--JodaTime的messages.properties

问题描述 投票:8回答:3

我最近在我的Android应用程序中用Java的qazxsw poi类替换了qazxsw poi的qazxsw poi类。我使用Date解析Joda。我在build.gradle文件中添加了以下行

DateTime

它破坏了我的构建。错误消息是Jackson。它还提出了以下选项

json

在JodaTime中有很多这样的文件,如“messages_da.properties”,“messages_fr.properties”。我相信这些用于提供基于区域设置的格式。

我的预感说不应该排除这些文件。如果那里的专家可以为此提供解决方案,那就太棒了

android android-gradle jodatime
3个回答
6
投票

这实际上是一个问题,这取决于项目中的多个compile com.fasterxml.jackson.datatype:jackson-datatype-joda:2.4.3 compile net.danlew:android.joda:2.7.1 模块。

要解决此问题,您应该从项目中包含“重复”duplicate files during packaging of APK模块的任何依赖项中排除任何“重复”android { packagingOptions { exclude 'org/joda/time/format/messages_da.properties' } } 模块。

要找出包含“重复”joda-time的依赖项,请使用命令joda-time列出完整的依赖关系图。然后查看依赖项列表,找到包含“重复”joda-time模块的那些。然后从任何包含“重复”的依赖项中排除joda-time。执行此操作后,您的应用程序将构建正常。

如何从依赖项中排除./gradlew app:dependencies的示例:

joda-time

这是处理依赖冲突的正确方法。


4
投票

我解决了这个问题

joda-time

3
投票

我的脏解决方案:

joda-time

推荐问答