最近装了MyEclipse9.0,发现没有svn,便尝试着在线安装,可是缓慢的安装过程之后,检出的时候总有错,所以最好用离线安装,在网上看了一些办法,有的已经不能用了,但是发现有一种方法可行并且很好,主要是因为这种方法基本上是通用的,各种版本的MyEclipse都可以用,各种插件的安装也可以用。下面就让我们一起详细的看一下吧:
一、下载svn插件。
最新的已经是1.10版本了。自己可以依据兴趣下自己喜欢的版本,我下的是1.8的,地址如下:
svn插件网站:http://subclipse.tigris.org/
1.8版插件下载地址:http://subclipse.tigris.org/files/documents/906/49209/site-1.8.8.zip
二、解压
将其解压,找到其中的两个文件夹features和plugins,在Myeclipse目录下面新建一个文件夹,名称随意,可以就叫svn;或是在人任意目录下,如D:\Development\myplugins\svn(只要自己清楚所建文件夹的地址就行),将解压的两个文件夹放在这个新建的目录中。
三、找到要修改的bundles.info文件
接着,找到Myeclipse的安装目录,在安装目录下的configuration\org.eclipse.equinox.simpleconfigurator这个目录中有个bundles.info文件,用记事本打开,而我们要做的就是需要在这个文件中增加svn插件的相关信息,Myeclipse就会有svn了。那么现在重要的就是获取插件信息,也就是第四步。
四、获取插件信息
运行下面的java代码,可以在MyEclipse运行。
建工程、包、java文件
复制以下代码:
- package app;
- import java.io.File;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * MyEclipse9 插件配置代码生成器
- *
- *
- */
- public class PluginConfigCreator
- {
- public PluginConfigCreator()
- {
- }
- public void print(String path)
- {
- List<String> list = getFileList(path);
- if (list == null)
- {
- return;
- }
- int length = list.size();
- for (int i = 0; i < length; i++)
- {
- String result = "";
- String thePath = getFormatPath(getString(list.get(i)));
- File file = new File(thePath);
- if (file.isDirectory())
- {
- String fileName = file.getName();
- if (fileName.indexOf("_") < 0)
- {
- print(thePath);
- continue;
- }
- String[] filenames = fileName.split("_");
- String filename1 = filenames[0];
- String filename2 = filenames[1];
- result = filename1 + "," + filename2 + ",file:/" + path + "/"
- + fileName + "//,4,false";
- System.out.println(result);
- } else if (file.isFile())
- {
- String fileName = file.getName();
- if (fileName.indexOf("_") < 0)
- {
- continue;
- }
- int last = fileName.lastIndexOf("_");// 最后一个下划线的位置
- String filename1 = fileName.substring(0, last);
- String filename2 = fileName.substring(last + 1, fileName
- .length() - 4);
- result = filename1 + "," + filename2 + ",file:/" + path + "/"
- + fileName + ",4,false";
- System.out.println(result);
- }
- }
- }
- public List<String> getFileList(String path)
- {
- path = getFormatPath(path);
- path = path + "/";
- File filePath = new File(path);
- if (!filePath.isDirectory())
- {
- return null;
- }
- String[] filelist = filePath.list();
- List<String> filelistFilter = new ArrayList<String>();
- for (int i = 0; i < filelist.length; i++)
- {
- String tempfilename = getFormatPath(path + filelist[i]);
- filelistFilter.add(tempfilename);
- }
- return filelistFilter;
- }
- public String getString(Object object)
- {
- if (object == null)
- {
- return "";
- }
- return String.valueOf(object);
- }
- public String getFormatPath(String path)
- {
- path = path.replaceAll("", "/");
- path = path.replaceAll("//", "/");
- return path;
- }
- public static void main(String[] args)
- {
- /*你的features 和 plugins复制后放的目录*/
- String plugin = "改成安装目录//Genuitec//svn"; //如:D://Development//myplugins//svn
- new PluginConfigCreator().print(plugin);
- }
- }
五、重启MyEclipse
重启后,就可以找到svn了,而且检出也没有任何问题了。