MyEclipse 10 中增加svn插件

着Myeclipse版本号的变大,插件的安装也越来越复杂了,在有了configuration center之后,明明eclipse都能正常使用的update site,在Myeclipse中就是不能使用,真纠结。我试了好几个插件的在线安装,没有一个能成功的,而且巨慢无比,等待很长一段时间之后告诉你,失败。所以安装插件最好还是采用离线安装。

网上有另类的解决办法,亲自尝试了一些,有些已经都不可用了,特记录一下可用的方式。

首先:下载svn插件,最新的已经是1.8版本了。svn插件网站:http://subclipse.tigris.org/,插件下载地址:http://subclipse.tigris.org/files/documents/906/49209/site-1.8.8.zip

解压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. publicclass PluginConfigCreator
  8. {
  9. public PluginConfigCreator()
  10. {
  11. }
  12. publicvoid print(String path)
  13. {
  14. List<String> list = 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. } elseif (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<String> getFileList(String path)
  57. {
  58. path = getFormatPath(path);
  59. path = path + "/";
  60. File filePath = new File(path);
  61. if (!filePath.isDirectory())
  62. {
  63. returnnull;
  64. }
  65. String[] filelist = filePath.list();
  66. List<String> filelistFilter = new ArrayList<String>();
  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. publicstaticvoid 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即可。

原文链接:http://www.cnblogs.com/bluesky4485/archive/2012/04/23/2467177.html

posted on 2013-02-18 09:38  青春丶冭柔情  阅读(195)  评论(0编辑  收藏  举报

导航