快速业务通道

发现Eclipse中未解析的插件依赖性 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
   "/fragment.xml");    if(fragmentDotXmlFile.exists()){    pp = new PluginParser(fragmentDotXmlFile);    }else{    return;//no plugin.xml or fragment.xml found    }   }   String displayName = pdObject.getDisplayName();   System.out.println("\nPlugin ["+ displayName + "]    requires" + "\n");   String requires[] = pp.getDependencyList();   if(0 != requires.length ){    for(int i=0; i<requires.length; i++){    System.out.println("\t" + requires[i] );    PluginData pd[] =    getPluginDataObjectsFromPluginID(requires[i]);    PluginData nextPlugin = null;    switch(pd.length){    case 0:     //great, we know there is     //something missing     nextPlugin = null;     break;    case 1:     //best case, everything will be smooth     nextPlugin = pd[0];     break;    default:     //worst case, there must be more     //than 1 plugin with the same id     //at different locations.     String msgLine1 =     "Plugin " + displayName +     " requires " +     requires[i] + "\n";     String msgLine2 =     "Duplicate plug-ins found for ID: \     " " + requires[i] +     "\"" +     "\n Continuing with higher version...     " ;     //it is bad to give repeated     //reminders,     //so remind only once per plugin id.     if(! alreadyNotified.contains(     new String(requires[i]))){     MessageDialog.openInformation(null,     "Dependency Walker",       msgLine1 +      msgLine2);     alreadyNotified.add(     new String(requires[i]));     }     //always take the better     //version anyway     nextPlugin =     getBetterVersionPlugin(pd);     break;    }//end of switch    if( null != nextPlugin ){     TreeParent nextinLine =     new TreeParent(     nextPlugin.getDisplayName(),     nextPlugin.isPlugin     LoadedInRegistry()     );     parentNode.addChild(nextinLine);     recursivePluginDependencyWalker(     nextPlugin,     nextinLine);    }else{     TreeParent nextinLine =     new TreeParent(     requires[i] +     " [This plug-in is missing]     ",     false);     parentNode.addChild(nextinLine);     //obviously we can''t recurse     //into a missing plugin...    }    }//end of for   }else{    System.out.println("\t NOTHING:    No further dependency \n" );    //no further dependency   }   } catch (Exception e) {   e.printStackTrace();   } }

发现Eclipse中未解析的插件依赖性(4)

时间:2011-02-08 IBM Indiver Dwivedi

有时候,我们会碰到在不同位置存在具有相同 ID 的插件的情况。例如,ID 为 org.eclipse.xsd 的插件可能会在 <targetPlatform>\eclip

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号