近段时间是公司需要上docker,要对镜像瘦身,因而大量在使用eclipse对osgi构件进行打包处理,
其中遇到不少困难,排错经验趁机记录下来,方便自己和有需要的同学快速排错。
1、maven版本问题
老生常谈的版本依赖,jdk1.6要对应maven3.2.5,版本对不上没法install,其中有个项目要用到jdk1.6,我是先安装jdk1.8,安装1.6的时候开始安网上教程,去注册表修改,然后配置环境,然后将jdk1.6bin下的3个javaexe文件放进c盘的windows系统中,一气呵成发现只需要解压出来1.6,环境什么的还是用jdk1.8完全没问题,eclipse中在项目设置一下jre system library的properties为1.6即可用jdk1.6运行项目
windows>perferences>java>installed jres>添加解压的jdk1.6文件
附上1.6jdk网盘链接:百度网盘 请输入提取码百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固,支持教育网加速,支持手机端。注册使用百度网盘即可享受免费存储空间https://pan.baidu.com/s/1ddReeqCqPKZYUWd6lOpw6g
提取码:q8du
2、及时关闭错误的项目
workspace中可能有很多项目,其中就存在了jar依赖,某次intall失败的时候,某个java文件报错找不到xxx类,可以crtl+shift+t 查找相关jar文件,在打开的opentype里面点击相应文件跳转到其他项目中,关闭该项目,重新选中打包项目,project>clean,右键项目maven> update,记得勾选force update,可以让项目去本地仓库重新找依赖jar
3、clean和update无效
有时候导入了jar,本地仓库里也确实找到,install的时候硬是报错找不到xxx类,这时候可以看一下依赖的jar里面有没有代码,如果点开jar发现里面是空的,看不出有源码class文件,可以将本地仓库中该文件直接删除,项目rebuild一下,重新打开发现有源码则可通过编译。
4、修改依赖版本号
很多时候旧的版本已经失效了,还在引用只能报错,这时候可以尝试更换一下version
5、jar之间循环依赖
部分类不需要使用的话可以导入的时候将其排除,避免cannot be resolved的错误



