天天看點

Myeclipse 8.x 之後的插件安裝方式!

說到插件,myeclipse自8.X開始,插件安裝就變得巨難用,通常最好還是用離線安裝,線上安裝很可能出問題,下面僅以SVN安裝為例,其插件也都可采用這種方式添加。

1.首先下載下傳SVN包

2.解壓SVN包,然後找到其中的兩個檔案夾:features 和 plugins

3.建一個檔案夾(位置最好是D:\MyEclipse Bling Edition 10\dropins安裝目錄根目錄下的dropins檔案夾中(有時候不放在這個檔案夾中打開SVN會報錯),名稱自己定就好了,我的是D:\MyEclipse Bling Edition 10\dropins\svn),然後把第二步的解壓好的features 和 plugins放到這個檔案夾下

4.找到myeclipse的安裝目錄,下面有一個configuration\org.eclipse.equinox.simpleconfigurator\bundles.info 檔案。現在需要做的就是在該檔案内添加的東西

5.添加的内容用下面的類生成:

package test;

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) {
		/*你的SVN的features 和 plugins複制後放的目錄*/
		String plugin = "D:/MyEclipse Bling Edition 10/dropins/svn";
		new PluginConfigCreator().print(plugin);
	}
}
           

6.把以上生成的字元串(一大堆)添加到第四步bundles.info檔案的後面,然後重新開機myeclipse即可。