NutzCN Logo
问答 nutz Logs 存在bug
发布于 2683天前 作者 ansjsun 1937 次浏览 复制 上一个帖子 下一个帖子
标签: log
 /**
     * 初始化NutLog,检查全部Log的可用性,选择可用的Log适配器
     * <p/>
     * <b>加载本类时,该方法已经在静态构造函数中调用,用户无需主动调用.</b>
     * <p/>
     * <b>除非迫不得已,请不要调用本方法<b/>
     * <p/>
     */
    public static void init() {
        try {
            String packageName = Logs.class.getPackage().getName() + ".impl.";
            adapter = new SimplePluginManager<LogAdapter>(
                    packageName + "CustomLogAdapter",
                    packageName + "Slf4jLogAdapter",
                    packageName + "Log4jLogAdapter",
                    packageName + "SystemLogAdapter").get();
        }
        catch (Throwable e) {
            //这是不应该发生的,SystemLogAdapter应该永远返回true
            //唯一的可能性是所请求的org.nutz.log.impl.SystemLogAdapter根本不存在
            //例如改了package
            e.printStackTrace();
        }
    }

当 jvm限制了取得classloader 就会发生这个不应该发生的事情

Exception in thread "main" java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "getClassLoader")
	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472)
	at 
2 回复

虽然可以..通过 Logs.setAdapter(new Log4jLogAdapter()); 来暂时设置进去...但是会报异常..

添加回复
请先登陆
回到顶部