原文:
随着Myeclipse版本号的变大,插件的安装也越来越复杂了,在有了configuration center之后,明明eclipse都能正常使用的update site,在Myeclipse中就是不能使用,真纠结。我试了好几个插件的在线安装,没有一个能成功的,而且巨慢无比,等待很长一段时间之后告诉你,失败。所以安装插件最好还是采用离线安装。
网上有另类的解决办法,亲自尝试了一些,有些已经都不可用了,特记录一下可用的方式。
首先:下载svn插件,最新的已经是1.8版本了。svn插件网站:,插件下载地址:
解压svn包,找到其中的两个文件夹features和plugins目录,在Myeclipse目录下面新建一个文件夹,名称随意,可以就叫svn,将解压的两个文件夹放在这个新建的目录中
找到Myeclipse的安装目录,在安装目录下的configuration\org.eclipse.equinox.simpleconfigurator这个目录中有个
bundles.info文件,需要在这个文件中增加插件的相关信息Myeclipse才会去加载。
添加的内容使用下面的类生成:
1 import java.io.File; 2 import java.util.ArrayList; 3 import java.util.List; 4 /** 5 * MyEclipse10 插件配置代码生成器 6 */ 7 public class PluginConfigCreator 8 { 9 public PluginConfigCreator() 10 { 11 } 12 public void print(String path) 13 { 14 Listlist = getFileList(path); 15 if (list == null) 16 { 17 return; 18 } 19 int length = list.size(); 20 for (int i = 0; i < length; i++) 21 { 22 String result = ""; 23 String thePath = getFormatPath(getString(list.get(i))); 24 File file = new File(thePath); 25 if (file.isDirectory()) 26 { 27 String fileName = file.getName(); 28 if (fileName.indexOf("_") < 0) 29 { 30 print(thePath); 31 continue; 32 } 33 String[] filenames = fileName.split("_"); 34 String filename1 = filenames[0]; 35 String filename2 = filenames[1]; 36 result = filename1 + "," + filename2 + ",file:/" + path + "/" 37 + fileName + "\\,4,false"; 38 System.out.println(result); 39 } else if (file.isFile()) 40 { 41 String fileName = file.getName(); 42 if (fileName.indexOf("_") < 0) 43 { 44 continue; 45 } 46 int last = fileName.lastIndexOf("_");// 最后一个下划线的位置 47 String filename1 = fileName.substring(0, last); 48 String filename2 = fileName.substring(last + 1, fileName 49 .length() - 4); 50 result = filename1 + "," + filename2 + ",file:/" + path + "/" 51 + fileName + ",4,false"; 52 System.out.println(result); 53 } 54 } 55 } 56 public List getFileList(String path) 57 { 58 path = getFormatPath(path); 59 path = path + "/"; 60 File filePath = new File(path); 61 if (!filePath.isDirectory()) 62 { 63 return null; 64 } 65 String[] filelist = filePath.list(); 66 List filelistFilter = new ArrayList (); 67 for (int i = 0; i < filelist.length; i++) 68 { 69 String tempfilename = getFormatPath(path + filelist[i]); 70 filelistFilter.add(tempfilename); 71 } 72 return filelistFilter; 73 } 74 public String getString(Object object) 75 { 76 if (object == null) 77 { 78 return ""; 79 } 80 return String.valueOf(object); 81 } 82 public String getFormatPath(String path) 83 { 84 path = path.replaceAll("\\\\", "/"); 85 path = path.replaceAll("//", "/"); 86 return path; 87 } 88 public static void main(String[] args) 89 { 90 /*你的SVN的features 和 plugins复制后放的目录*/ 91 String plugin = "F:\\MyEclipse10.0\\myEclipsePlugin\\svn"; 92 new PluginConfigCreator().print(plugin); 93 } 94 }
最后就是在bundles.info文件后增加上面代码生成的内容,然后重启下Myeclipse即可。