不完全解决,但相对有效。
背景
如果你的eclipse管理maven依赖时无法搜索出结果?
如我现有一个常用的项目工作空间目录为:
/Users/pollyduan/Documents/workspace
工作目录中的仓库index缓存保存在哪里呢?
${basedir}/.metadata/.plugin/org.eclipse.m2e.core/
在使用一段时间以后,该目录会膨胀的很严重,比如我现在该目录的大小是1.8G。
如果我再创建一个工作空间,如:/Users/pollyduan/Documents/workspace_new
,这时候就有问题了,maven编辑pom文件时无法搜索,除非再更新一次index,众所周知这是挺致命的。
解决办法
那么就想了,是否可以做一个软链,将该目录共享给一个新的工作空间呢?
所以,在新建的工作空间如下操作:
temp_dir=/Users/pollyduan/Documents/workspace_new
cd ${temp_dir}
mkdir -p ${temp_dir}/.metadata/.plugin
cd ${temp_dir}/.metadata/.plugin
rm -rf org.eclipse.m2e.core
ln -s /Users/pollyduan/Documents/workspace/.metadata/.plugin/org.eclipse.m2e.core org.eclipse.m2e.core
重启eclipse,问题解决。没毛病。
小结
可以将前面的脚本写成一个公用的脚本,在新的工作空间执行以下。
好在这种事情不是很频繁操作。
附:
本地缓存我打包了一份放在云盘里,需要的话自取。 https://pan.baidu.com/s/1gfONHHx
解压后得到的nexus目录,复制或者软链到工程目录中的 .metadata/.plugins/org.eclipse.m2e.core/nexus
即可。
有问题可以Q群吹水:9040323