1 本地写的调度任务插件不执行,也不进断点
原因分析:
大概版本是2.1.5的版本的开发者助手,创建debug模板类的时候,会默认使用本地启动,而本地启动的时候就是不会注册MQ服务,所以导致调度任务发送的消息,没消费者来消费,所以就不会进断点
解决方案:
在启动类加上这个配置就可:
cosmic.setMqConsumerRegister(true,"xxx");//xxx需要设置成每人都不同的
2 通过idea拉取环境jar包,导入旧项目代码后,发现系统存在某些jar包的类,却无法被idea引用,无法编译。
如下图
项目搭建的环境是有这个包的,但是红框处却被idea设置成为报错的
原因分析:
苍穹的架构是分应用部署的,各个应用之间的jar包有时是需要分别部署不通的容器里,
有项目开发者经常错误的引用其他应用类,比如说很常见的StringUtil类,在下图中我们可以看到在标准产品中有很多实现,
比如我们在做财务云的开发,写代码的时候误引用了供应链模块的StringUtil,当项目是采用分应用部署的情况下,
就会导致我在财务云的类是引用不到供应链模块的StringUtil,从而发生报错。
为了规范这种情况,开发者助手在生成gradle模板的时候对引用标准biz下面的jar包类做了约束,下图的biz,cus目录的jar包只做runtimeOnly。
解决方案:
把biz前的runtimeOnly改成api,
改完后有时间也建议审视下,建议做二开的项目拆分
如果是在财务云上二开的,单据建一个财务的二开工程,这样打出的jar包里面只要包含财务云的功能代码,同时部署的时候也可以只加载到财务云的节点上
修改后再次刷新gradle,即可
3 通过开发助手更新环境资源包报Request failed with status code 404
问题分析:
可以在mc地址请求资源地址上uptate.json,通过这个json就能找到这次需要更新的内容了。
在上图,我们可以知道在服务器上appstore/cus/目录下,有一个乱码的zip包,了解后就知道这个是项目上修改后添加了中文,导致mc生成json的时候因为编码的问题导致的
解决方案:
修改中文包名称,重新在MC生成资源包即可
4 更新环境失败 1
推荐阅读