2019-10-16 09:28

@JFinal 我这边刚刚测试的结果好像可以通过CP配置指定类加载优先级。
测试过程:我重写的shiro中的一个类,shiro的jar中的class没有删除,我自己项目打包出来的jar里面的同名类也打进去了,然后添加了一个编译好的class到CP配置的classes目录下。
测试出来的结果:
win10开发电脑运行bat:CP不指定classes目录或者CP配置的时候将${APP_BASE_PATH}/classes:放在lib后面,加载的是项目打包出来的my-project.jar中的class;CP指定classes并放在CP的最前面时,加载的是放置在classes文件夹中的class。
CentOS7运行sh:CP不指定classes目录或者CP配置的时候将${APP_BASE_PATH}/classes:放在lib后面,加载的是shiro-core.jar中的class;CP指定classes并放在CP的最前面时,加载的是放置在classes文件夹中的class。

2019-10-15 14:39

@JFinal 感觉大佬指点,我这边的需要搞定了。
现在采用的是直接只使用第5步,只改启动文件的CP配置,把自定义的classes目录放在前面。其他都按照jfinal_demo_for_maven的不变,项目jar包依然打,只把自己与第三方jar包冲突的class放入配置的classes目录里面(添加完整包路径)即可优先加载自定义classes目录的class文件。
谢谢

2019-10-15 14:20

@JFinal 老大回复真迅速,谢谢,我马上试试

2019-02-28 18:37

@JFinal 谢谢,我刚刚发现了,配置是对的,但是我用的idea版本太老了,没有升级,升级成2018.3.4就可以了