隨着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才會去加載。
添加的內容使用下面的類生成:
最后就是在bundles.info文件后增加上面代碼生成的內容,然后重啟下Myeclipse即可。import java.io.File;import java.util.ArrayList;import java.util.List;/**
* MyEclipse10 插件配置代碼生成器
*/
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 = "F:\\MyEclipse10.0\\myEclipsePlugin\\svn";
new PluginConfigCreator().print(plugin);
}}