svn插件与myEclipse8.5的集成

来源:互联网 发布:荆门市网络作文大赛 编辑:程序博客网 时间:2024/05/12 09:42

 

        首先下载eclipsesvn插件,个人不喜欢将” features”” plugins”两个文件夹里面的包直接复制到Myeclipse插件的文件夹下,那样很不方便管理,用*.link的方式还是挺方便的。

 

第一步:

    在“D:\Program Files\Genuitec\MyEclipse8.5(你自己的Mycelipse8.5的安装目录)新建一个“myPlugin”,将SVN插件拷贝新建的“myPlugin

    

 

第二步:  

       在“D:\Program Files\Genuitec\MyEclipse 8.5\dropins”目录下新建一个svn.link的文件。

       svn.link的内容为:“path=D:/Program Files/Genuitec/MyEclipse 8.5/myPlugin/svn”,此处为反斜杠“/

因为java中“\”是特殊符号,代表转义符,也可以:“path=D:\\Program Files\\Genuitec\\……”,将符号转义过来。

      

 

第三步:

      都配置好后,将myEclipse8.5重启。重启之后,进入“window-->Preferences-->Team”点开“Team”如果看到“SVN”,恭喜你继承就成功了。

*意外还是会有的,可能看不到“SVN”。如果没成功的话,就请接着第四步往下看。

     

 

第四步:

       在插件没有继承成功的情况下,没有继承成功的原因是因为mycelipse8.5没有把插件的路径加载到“bundles.info”文件中。所以呢,就要借助一个类“CreatePluginsConfig.java”帮助我们生成那些路径,然后将生成的路径拷贝到“bundles.info”的最后面。

       1、 将“CreatePluginsConfig.java”类拷贝到Mycelipse中运行一下,会在控制台中打印出所有的路径,将所有的内容全部拷贝。也可以用命令窗口(在JDK环境变量配置好的情况下)javacjava命令来运行此文件。个人觉得输出的内容不好复制,所以不怎么推荐。

                 

              CreatePluginsConfig类中的片段代码

*注:“CreatePluginsConfig.java”在文章最后面。

 

        2、找到Myeclipse8.5安装目录下的“bundles.info”,将上面复制的内容全部复制到“bundles.info”的尾部,保存文件。自此再重启MyEclipse8.5,不出差错SVN肯定能集成成功。
       目录:D:\......\MyEclipse 8.5\configuration\org.eclipse.equinox.simpleconfigurator\

         

         

最后:关于myeclipse8.5的集成上面的方法不只是对svn适用,一般的插件按照上面的方法都能集成成功。

 

CreatePluginsConfig类的内容:

     

package it.demo.test;

import java.io.File; 
import java.util.ArrayList; 
import java.util.List; 
public class CreatePluginsConfig { 
    private String path; 
    public CreatePluginsConfig(String path) { 
        this.path = path; 
    } 
    public void print() { 
        List 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) { 
                    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 getFileList(String path) { 
        path = getFormatPath(path); 
        path = path + "/"; 
        File filePath = new File(path); 
        if (!filePath.isDirectory()) { 
            return null; 
        } 
        String[] filelist = filePath.list(); 
        List filelistFilter = new ArrayList(); 
        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) { 
        new CreatePluginsConfig( 
                "D://Program Files//Genuitec//MyEclipse 8.5//myPlugin//svn//plugins") 
                .print(); 
    } 
}

 

原创粉丝点击