正在做一个idea生成crud插件,init.btl内容如下:
/context是一个map,专用于从模板设置的变量,然后java可以访问.下面设置几个文件的保存路径/
var tmpPath = "/src/main/java/"+strutil.replace(pkgPrefix,".","/");
/* 例如:xx-messagestdeo/src/main/java/com/xx/dao/eo/StdChannelEo.java */
@context.put("01.StdEo.java.btl", projectId+"-stdeo"+tmpPath+"/dao/eo/Std"+table.entity+"Eo.java");
@context.put("02.Eo.java.btl", projectId+"-eo"+tmpPath+"/dao/eo/"+table.entity+"Eo.java");
@context.put("03.Mapper.java.btl", projectId+"-dao"+tmpPath+"/dao/mapper/"+table.entity+"Mapper.java");
@context.put("04.Das.java.btl", projectId+"-dao"+tmpPath+"/dao/das/"+table.entity+"Das.java");
@context.put("05.AddReqDto.java.btl", projectId+"-api"+tmpPath+"/api/dto/request/"+table.entity+"AddReqDto.java");
@context.put("06.ModifyReqDto.java.btl", projectId+"-api"+tmpPath+"/api/dto/request/"+table.entity+"ModifyReqDto.java");
@context.put("07.QueryReqDto.java.btl", projectId+"-api"+tmpPath+"/api/dto/request/"+table.entity+"QueryReqDto.java");
@context.put("08.RespDto.java.btl", projectId+"-api"+tmpPath+"/api/dto/response/"+table.entity+"RespDto.java");
@context.put("09.Service.java.btl", projectId+"-biz"+tmpPath+"/biz/service/"+table.entity+"Service.java");
@context.put("10.ServiceImpl.java.btl", projectId+"-biz"+tmpPath+"/biz/service/impl/"+table.entity+"ServiceImpl.java");
@context.put("11.IApi.java.btl", projectId+"-api"+tmpPath+"/api/"+table.entity+"Api.java");
@context.put("12.IQueryApi.java.btl", projectId+"-api"+tmpPath+"/api/query/"+table.entity+"QueryApi.java");
@context.put("13.Rest.java.btl", projectId+"-service"+tmpPath+"/svr/rest/"+table.entity+"Rest.java");
@context.put("14.ApiImpl.java.btl", projectId+"-biz"+tmpPath+"/biz/apiimpl/"+table.entity+"ApiImpl.java");
@context.put("15.QueryApiImpl.java.btl", projectId+"-biz"+tmpPath+"/biz/apiimpl/query/"+table.entity+"QueryApiImpl.java");
%>
单元测试跑得好好的.加入到插件,通过jbutton事件触发调用,当前线程加载器为com.intellij.util.lang.UrlClassLoader,
报错找不到;java.lang.ClassNotFoundException: org.beetl.ext.fn.TypeNameFunction。生成GroupTemplate指定使用
指定为GroupTemplate.class.getClassLoader()之后,往下走又报找不到类org.beetl.core.om.AttributeAccess。
org.beetl.core.om.asm.ASMBeanFactory#byteContextLoader的父加载器为什么不直接用beanClassLoader,而是在类初始化时通过
ClassLoader classLoader = Thread.currentThread().getContextClassLoader() != null
? Thread.currentThread().getContextClassLoader()
: GroupTemplate.class.getClassLoader();
麻烦大佬解决一下