org.eclipse.jdt.ui_3.1.1.jar
org.eclipse.jdt.core_3.1.1.jar
org.eclipse.jdt_3.1.0.jar
org.eclipse.jface.text_3.1.1.jar
org.eclipse.jface_3.1.1.jar
org.eclipse.osgi_3.1.1.jar
org.eclipse.text_3.1.1.jar
org.eclipse.swt.win32.win32.x86_3.1.1.jar
org.eclipse.ui_3.1.1.jar
org.eclipse.ui.ide_3.1.1.jar
org.eclipse.ui.editors_3.1.1.jar
org.eclipse.ui.workbench_3.1.1.jar
org.eclipse.ui.workbench.texteditor_3.1.1.jar
org.eclipse.ui.views_3.1.1.jar
另外,plug-in.xml的Dependencies页要包含:
org.eclipse.ui
org.eclipse.core.runtime
org.eclipse.jface.text
org.eclipse.jdt.core
org.eclipse.ui.ide
org.eclipse.ui.editors
org.eclipse.ui.workbench.texteditor_3.1.1.jar
org.eclipse.ui.views
但是,当选好Dependencies后,Eclipse会自动添加一个Plug-in Dependence Lib,它不能改。有时某些类包含在这个Lib的jar里后会提示不可访问,但我又没做限定。最后只好把这个Lib删了,自己做了个PluginLib就好了。
2.出错信息:
原来出错信息是在运行为的那个用来调试plugin最终效果的Eclipse里看的,在window->show view->Error Log
一开始不知道出了错去哪里看,现在知道了。
3.调试过程:
1)调试时发现command ( "org.vaulttec.velocity.ui.edit.goto.definition" ) 找不到,原来我起先为了做最小可运行的plugin,把原来的plug-in.xml中某些东西删了。加进来就好了:
plug-in.xml:
<extension
point="org.eclipse.ui.commands">
<command
name="%command.gotoDefinition.name"
description="%command.gotoDefinition.description"
id="org.vaulttec.velocity.ui.edit.goto.definition">
</command>
</extension>
不过command的分类它提示说过期了,就删掉了,但运行起来后有个警告。暂时不管它了。嘿~
4.VelocityColorProvider:
参照eclipse自动生成的plug-in示例,把getColor(String)改成了getColor(RGB),这样一来就不从字符串再转RGB再做为参数了,原先转的过程中用到了IPreferenceStore,在新的3.1.1架构下好像移过了,用法不同了。暂时又不知怎么用,所以改掉了。类似的情形还没改,最好是弄懂这功能移哪去了。
现在整个代码只能理解到eclipse自动生成的plug-in示例的程度,有些复杂的接口没仔细看。再说了。反正现在这个plug-in能跑起来了,毕竟是第一只小板凳嘛,要求不能太高。以后再慢慢改进。