SmartRefreshLayout Fatal Exception: java.lang.StackOverflowError: stack size 8192KB

xqkwcwgp  于 2个月前  发布在  Java
关注(0)|答案(2)|浏览(45)
Fatal Exception: java.lang.StackOverflowError: stack size 8192KB
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.friends.meeti.bind.StaticBind.setNoMoreData(StaticBind.java:194)
implementation 'com.scwang.smart:refresh-layout-kernel:2.0.3'
    implementation 'com.scwang.smart:refresh-header-classics:2.0.3'
    implementation 'com.scwang.smart:refresh-footer-classics:2.0.3'
@BindingAdapter("noMoreData")
    public static void setNoMoreData(SmartRefreshLayout layout, boolean isNoMore) {
        layout.setNoMoreData(isNoMore);
    }
<com.scwang.smart.refresh.layout.SmartRefreshLayout
    android:id="@+id/refreshLayout"
    autoRefresh="@{vm.autoRefresh}"
    finishLoad="@{vm.finishLoad}"
    noMoreData="@{!vm.recommendUserRepository.getHasNexPageLiveData()}"
    refreshLoadMoreListener="@{handler}"
    android:layout_width="0dp"
    android:layout_height="0dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

线上出现很多堆栈溢出异常,请问为什么会出现这个问题,看日志似乎在循环调用,是我使用的方法有问题吗?请作者有空了帮我看看,谢谢了!

dy2hfwbg

dy2hfwbg1#

Fatal Exception: java.lang.StackOverflowError: stack size 8192KB
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.friends.meeti.bind.StaticBind.setNoMoreData(StaticBind.java:194)
implementation 'com.scwang.smart:refresh-layout-kernel:2.0.3'
    implementation 'com.scwang.smart:refresh-header-classics:2.0.3'
    implementation 'com.scwang.smart:refresh-footer-classics:2.0.3'
@BindingAdapter("noMoreData")
    public static void setNoMoreData(SmartRefreshLayout layout, boolean isNoMore) {
        layout.setNoMoreData(isNoMore);
    }
<com.scwang.smart.refresh.layout.SmartRefreshLayout
    android:id="@+id/refreshLayout"
    autoRefresh="@{vm.autoRefresh}"
    finishLoad="@{vm.finishLoad}"
    noMoreData="@{!vm.recommendUserRepository.getHasNexPageLiveData()}"
    refreshLoadMoreListener="@{handler}"
    android:layout_width="0dp"
    android:layout_height="0dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

线上出现很多堆栈溢出异常,请问为什么会出现这个问题,看日志似乎在循环调用,是我使用的方法有问题吗?请作者有空了帮我看看,谢谢了!

我也遇到了相同的问题,不知道小哥解决了吗

7lrncoxx

7lrncoxx2#

2022-02-08 16:03:26.896 22054-22054/com.xxx E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.xxx, PID: 22054
java.lang.StackOverflowError: stack size 8192KB
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
2022-02-08 16:03:27.438 22054-22054/com.xxx E/DEBUG: Report Name: 60969dd153b6726499f37aef_2.2.0_2afd9a16_Redmi-K30_11_164430738776434096_20220208160327_fg_exception.log
2022-02-08 16:03:27.438 22054-22054/com.xxx E/DEBUG: Log Type: exception
2022-02-08 16:03:27.518 22054-22054/com.xxx E/DEBUG: k_ac:UmengException
k_ct:exception
Exception message:
Back traces starts.
java.lang.StackOverflowError: stack size 8192KB
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:2854)
at com.scwang.smart.refresh.layout.SmartRefreshLayout$7.run(SmartRefreshLayout.java:3131)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMore(SmartRefreshLayout.java:3223)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.finishLoadMoreWithNoMoreData(SmartRefreshLayout.java:3236)
at com.scwang.smart.refresh.layout.SmartRefreshLayout.setNoMoreData(SmartRefreshLayout.java:

相关问题