• 欢迎加入MineBBS QQ讨论群:点击查看所有的官方讨论群
  • 我们将于近期对服务器进行迁移,服务可能中断至多2日。请各位安排好自己的访问计划,造成不便敬请谅解!
  • MineBBS入站考试已经上线!想要成为【正式会员】解锁更多功能吗?快来参与吧!【点我去看】
[失踪人口回归]Nukkit-MariataFramework解耦容器框架

插件 [失踪人口回归]Nukkit-MariataFramework解耦容器框架 2019050901

完成注册/登录后下载
fixed bug


强烈推荐将该框架配合YUPI使用
可以通过注解来设置指令的fallbackprefix
更新了startNow注解,取消了字段
修复主类与监听器锁定同一个类时,发生classLoader冲突而导致对象内存位置不一致的问题
优化了对于类路径递归的算法

添加了MariataPluginBase,里面继承PluginBase,并添加了中枢方法

- getReflectLoader方法

规定:使用该PluginBase作为主类的插件必须使用mariata.oml

自定义中枢方法的使用
//this为继承MariataPluginBase的主类

this.getReflectLoader(this,(obj,clz)->{
//对象处理
if(obj instanceof xxx){
对象的处理
}
},new String[]{根包名});
使用该方法后,所有的对象都会在这里被加载,并且在lambada表达式可以对全部对象加载
如:处理全部继承AAA类的对象
this.getReflectLoader(this,(obj,clz)->{
//对象处理
if(obj instanceof AAA){

}
},new String[]{根包名});
修复了一个小bug:onEnable被执行两遍的问题
修复了对于onLoad和onEnabled的加载问题,在onEnabled加载时会将PluginBase的isEnabled修改为true
使用
FrameworkCore.getInstance().getBeanManager().getBean(类型.class);
可以获取获取已经注册的对象
强化了注册代码的安全性
目前可以插件可以直接调用框架的PluginBase
后退
顶部 底部