Myeclipse 7的插件安装方式与原先的方式完全不一样了,
下面以vssplugin1.6.2插件安装为例进行说明。
假设Myeclipse 7的安装路径为:C:\Program Files\Genuitec
vssplugin1.6.2插件的路径为:
E:\Plugins\vssplugin\eclipse\plugins
将下面这段代码编译后执行:
CreatePluginsConfig.java
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(" E:\\Plugins\\vssplugin\\eclipse\\plugins") .print(); }}
执行完之后,将控制台中打印出的执行结果,直接复制到下面这个文件中:
C:\Program Files\Genuitec\MyEclipse 7.0\configuration\org.eclipse.equinox.simpleconfigurator\bundles.info
然后用 -clean 命令重新启动Myeclipse即了完成插件的安装。
import java.io.File;import java.io.FileOutputStream;import java.util.ArrayList;import java.util.List;public class CreatePluginsConfig { private String path = ""; private String eclipsePath = ""; File f; FileOutputStream fos; public CreatePluginsConfig(String path, String eclipsePath) { this.path = path; this.eclipsePath = eclipsePath; } public void print() { List<Object> 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); } try { f = new File(eclipsePath); if (!f.exists()) { if (!f.mkdir()) { throw new Exception("文件夹不存在,创建失败!"); } } f = new File(eclipsePath + "\\bundles.info"); if (!file.exists()) if (!file.createNewFile()) throw new Exception("文件不存在,创建失败!"); fos = new FileOutputStream(f, true); fos.write((result + "\r\n").getBytes()); fos.flush(); fos.close(); } catch (Exception e) { e.printStackTrace(); } } } public List<Object> getFileList(String path) { path = getFormatPath(path); path = path + "/"; File filePath = new File(path); if (!filePath.isDirectory()) { return null; } String[] filelist = filePath.list(); List<Object> filelistFilter = new ArrayList<Object>(); 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) { /* 插件存放的目录 */ String pluginPathString = "C:\\Program Files\\Genuitec\\MyEclipse 7.1\\dropins\\spket\\eclipse\\plugins"; /* myeclipse的目录 */ String myeclipsePathString = "C:\\Program Files\\Genuitec\\MyEclipse 7.1\\configuration\\org.eclipse.equinox.simpleconfigurator"; new CreatePluginsConfig(pluginPathString, myeclipsePathString).print(); } /* * C:\ProgramFiles\Genuitec\MyEclipse7.1\configuration\org.eclipse.equinox. * simpleconfigurator\bundles.info */}
相关资源:svn插件myeclipse+svn插件