Arouter异常汇总

常见异常:
 1、编译异常:Error: Program type already present: com.alibaba.android.arouter.routes.ARouter$$Group$$arouter,查看所有moudle中的路径配置,
    解决:是否包含arouter,Arouter中的AutowiredServiceImpl类已经使用了/arouter/service/autowired这个路径
  所有冲突了。

**
 * Autowired service impl.
 *
 * @author zhilong <a href="mailto:zhilong.lzl@alibaba-inc.com">Contact me.</a>
 * @version 1.0
 * @since 2017/2/28 下午6:08
 */
@Route(path = "/arouter/service/autowired")
public class AutowiredServiceImpl implements AutowiredService {
    private LruCache<String, ISyringe> classCache;
    private List<String> blackList;
    …………
 }
 2、编译异常:Error: Program type already present: com.alibaba.android.arouter.routes.ARouter$$Group$$Main,最后这个Main是自己定义的,可能不一样

解决:查看所有moudle中,看看path的一级是否存在两个以上moudle使用Main的情况。

//LibraryA中使用
    public final class AA{
        public final static String LibraryA="/LibraryA";
        public final static String Home=LibraryA+"/Home";
    }
    //主工程中使用
    public final class Main{
        public final static String Main="/Main";
        public final static String Work=Main+"/Work";
    }
    //LibraryB中使用
    public final class BB{
        public final static String LibraryB="/LibraryB";
        public final static String New="/Main"+"/New";
    }

这里主工程和LibraryB中都使用了Main作为一级path,所以存在问题。

3、运行异常,跳转时崩溃: com.alibaba.android.arouter.exception.HandlerException: ARouter::Parameter is invalid!

原因可能是使用的path只有一级

ARouter.getInstance().build(BaseRoute.BB.LibraryB).navigation();

//LibraryB中使用
public final class BB{
public final static String LibraryB="/LibraryB";
public final static String New=LibraryB+"/New";
}

这个demo的源码:https://github.com/qiantanlong/ArouterDemo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值