最近為了在myeclipse8.0上裝個aspectj的外掛程式 用了各種方法都不給力。 最後試了下代碼方式 居然湊效了。於是記錄於此供以後參考。
方法如下:
外掛程式位置:D:\Program Files\MyEclipse 8.x Latest\myplugins\aspectj
其中aspectj檔案夾下的結構為eclipse/features(and plugins)
運行下面代碼 並將輸出 copy到..\MyEclipse 8.x Latest\configuration\org.eclipse.equinox.simpleconfigurator檔案夾下的bundles.info檔案最後。
開啟myeclipse就OK了
代碼如下(是用的別人的- -!)
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class CreatePluginsConfig {
public CreatePluginsConfig(){
}
public void print(String path){
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){
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 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){
//外掛程式檔案所在目錄designer下的目錄結構是eclipse/features and plugins的形式
String plugin = "D:\\Program Files\\MyEclipse 8.x Latest\\myplugins\\aspectj";
new CreatePluginsConfig().print(plugin);
}
}
另外是關於eclipse的外掛程式安裝 比較簡單 但還是記一下:
在eclipse目錄下的dropins檔案夾裡建一個.link檔案 裡面指明外掛程式的路徑 如 :
path=D:/Program Files/eclipse/myplugins/aspectj (此為features和plugins的目錄)