首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android库无法使用Java 8

Android库无法使用Java 8
EN

Stack Overflow用户
提问于 2017-06-19 19:04:35
回答 2查看 802关注 0票数 5

问题

自从我在中切换到 8之后,ShineButton库就不再在我的项目中工作了。

java.lang.NoClassDefFoundError: Failed resolution of: Landroid/animation/Animator$AnimatorListener$$CC;

在库的ShineButton部分的应用程序中使用时,我会收到此错误。由于这个错误发生在我对Java 8的更新中,而且我读到了一些与Java 8类似的错误,所以我确信这是导致问题的原因。

目标

我希望有一个允许库使用Java8的解决方案,因为我既喜欢这个库,也喜欢Java8提供的函数。我不太清楚如何解决这个问题,因为我找不到关于NoClassDefFoundError的任何信息,以及它与Java 8的确切关系。

额外信息

我正在使用AndroidStudio3.0构建我的项目,使用Android中的金丝雀4,我使用的是0.1.7 of ShineButton

当按下ShineButton并执行其动画时,会发生错误。

我已经这是在GitHub上发布的了,但我没有看到任何回应我自己,甚至更老的问题。最近,我还创办了一个向Android开发团队发布

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-09 15:58:49

作为一个小小的更新。我的错误在很久以前就被纠正了。我想是金丝雀5-6和依赖性更新。

票数 0
EN

Stack Overflow用户

发布于 2019-01-21 03:06:03

在D8中打开gradle.properties

代码语言:javascript
复制
android.enableD8.desugaring= true
android.enableD8=true

请参阅:https://jakewharton.com/androids-java-8-support/

或代码如下所示:

代码语言:javascript
复制
private Animator.AnimatorListener mAnimatorListener = new Animator.AnimatorListener() {

    @Override
    public void onAnimationStart(Animator animation, boolean isReverse) {

    }

    @Override
    public void onAnimationEnd(Animator animation, boolean isReverse) {

    }

    @Override
    public void onAnimationStart(Animator animation) {

    }

    @Override
    public void onAnimationEnd(Animator animation) {

    }

    @Override
    public void onAnimationCancel(Animator animation) {

    }

    @Override
    public void onAnimationRepeat(Animator animation) {

    }

键是覆盖:

代码语言:javascript
复制
@Override
public void onAnimationStart(Animator animation, boolean isReverse) {

}

@Override
public void onAnimationEnd(Animator animation, boolean isReverse) {

}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44638087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档