Eclipse RCP开发者。
暂时未有相关通用技术能力~
阿里云技能认证
详细说明package practice; import java.util.ArrayList; import java.util.List; import java.util.Scanner; import java.util.Stack; /** * 描述 现在,有一行括号序列,请你检查这行括号是否配对。
早前写了一篇《RCP:gef智能寻路算法(A star)》 出现了一点问题。 在AStar算法中,默认寻路起点和终点都是N x N的方格,但如果用在路由上,就会出现问题。 如果,需要连线的终点并不在方格的四角上,就产生了斜线。
导航器视图按下“Delete”的时候,会触发删除节点的操作。如果失效,按以下步骤检查: 1、在要删除的节点上点击右键,确定删除操作是否生效。如果没有生效,则按下列位置 a)检查navigator扩展配置,是否有提供ActionProvider? b)检查ActionProvider,是否有对DeleteAction做初始化 c)检查fillContextMenu,是否有添加DeleteAction 完成了以上,则可以在右键菜单中看到删除操作按钮。
public static List combin(final int TOTAL, final int SELETED) { List list = new ArrayList(400000); int[] i = new int[SELETED];...
List list = Arrays.asList(new Point(1, 5), new Point(2, 3), new Point(2, 8), new Point(9, 13)); int sum = list.
本路由继承自AbstactRouter,参数只有EditPart(编辑器内容控制器),gridLength(寻路用单元格大小),style(FLOYD,FLOYD_FLAT,FOUR_DIR)。 字符集编码为GBK,本文只做简单的代码解析,源码戳我 如果源码不全,可以联系本人。
org.eclipse.equinox.security.storage.StorageException: Unable to locate secure storage module 该异常同样是由于swt x86 x64版本匹配造成的。
有空了再翻译吧…… Table 2. Run configuration problems Problem Investigate During start you get error messages such as "One or more bundles ...
SWT中的拖拽是使用的org.eclipse.swt.dnd。 有三个需要密切注意的类: 1、DragSource 2、DropTarget 3、Transfer DragSource封装了需要被拖拽的Control DropTarget封装了拖拽的目标Control,即是拖拽终点...
可以参考Eclipse的Help->Help Content下的: Platform Plug-in Developer Guide > Programmer's Guide > Plugging into the workbench > Basic workbench extension points using actions 为了给Project Explorer的上下文菜单的new子菜单中添加一个新项目,我们使用到了org.eclipse.ui.popupMenus扩展点。
eclipse的菜单menu、工具栏toolbar乃至视图的上下文菜单contextmenu都是使用Action或Command实现的。 Action即是 org.eclipse.jface.action.IAction Command即是 org.eclipse.core.commands.Command 从它们的包名可以看出,Action是UI相关的,除了可执行代码(run方法)以外,还会包含一些UI信息,比如动作名称(Label),描述图片(Image)等等。
在Eclipse插件开发中, MANIFEST.MF, plugin.xml, build.properties是三种最常见的文件,由于它们共享同一个编辑器(Plug-in Manifest Editor),经常会有插件开发者误解、混淆了这三个文件的用途。
Annotation不算常用的技术,早前用它写了一些玩意儿,过了一年又忘干净了,今天写点东西记下来,以备再忘之需。 java.lang.annotation,接口 Annotation。对于Annotation,是Java5的新特性,JDK5引入了Metedata(元数据)很容易的就能够调用Annotations。
其实在google或者http://www.eclipse.org/forums/就能够找到这个问题的答案。 搜索关键字:rcp install plugins\bundles programmatically 大部分的操作都能在org.osgi.framework.Bundle这个接口里找到,比如start、stop、uninstall等等。
公丁 3克 母丁 3克 三奈 3克 草果 10克 甘草 15克 肉桂 5克 大茴 5克 内芷 5克 凉姜 5克 白扣 5克 沙仁 5克 陈皮 3克 小茴香 3克
如果没有发现编译期异常(就是导航栏项目上有红叉,红感叹号),那么Activator X for bundle Y is invalid和Activator not found这两个异常通常发生在eclipse3.6以及更老的RCP版本中。
我梦见有眼睛睁开了,窗帘挡住了清爽的早晨。 早晨和你都是蓝色的。 你撩开发梢,一枚轻吻印在了我的脸颊,寒冷逐渐退怯。 我以为醒了,告诉你梦里繁星密布。 在另一个梦里,我的尸体徒步跋涉,去和你告别。
本帖最后由 anrainie 于 2013-7-23 11:31 编辑对于eclipse插件开发的新手,经常会遇到插件写好了,拷贝到plugins或dropins文件下,但是没有生效。上网各种问,也很难找到正确的答案。
1、动态代理只会调用(invoke)接口已有的方法 2、如果有一个接口已有的方法被另外一个接口已有的方法调用,后者在被外部调用时,会触发动态代理的invoke,但前者不会触发。(估计是为了避免迭代以及提高效率)
1、创建product Configuration,这个是产品的配置文件,声明了要导出的RCP产品的形式,有无启动器,需要的插件,启动参数,名称,加载图片,splash等等。 2、实现两个扩展点 3、product文件Overview位置配置产品的ID、版本,启动produc...
原文链接: OSGi组件依赖 OSGi doesn’t allow you to specify class visibility at the class level, but instead at the level of the containing package. 1. The header:Export-Package and The directives for the Export-Package header 当指定一个package export,默认的它的subpackage是没有exportde,需特别指定。
凌晨六点左右的时候,暴雨,我从梦里挣出来,接起电话,里面是北北的声音。 我困惑了一小段时间用来观察我在的房间,白色的房顶,窗帘后微蓝的光线。可能是信号问题,又或者是我还没醒来,听筒里的说话声飘飘渺渺没有落处,我像是落在一口阴暗潮湿的井里,朝着头顶想象出来的光攀爬,于是它一点一点清晰起来,把我一点一点地拽近现实。
在xml配置Hibernate hbm定义时候,catelog用于定义数据库\数据分区。 如果该hbm中同时定义了one-to-one关系,会抛出异常。暂未找到原因,去掉catelog即可。
今天遇到个问题,Eclipse在Splash启动阶段对多线程的支持有点不同。根据某人的见解,org.eclipse.ui.internal.StartupThreading 可以解决这个问题 我看了一眼Eclipse自己的Splash实现是这样的: private v...
我们使用eclipse的java编辑器的时候,会经常用到alt+/触发的自动代码补全 这个并不仅仅是SWT/JFACE框架下的内容更是属于eclipse先说明一下这个概念,现在的eclipse是基于osgi框架的,osgi是一个可热插拔的以bundle为基本元素的灵活管理规范。
1、Maven打包时出现错误:File encoding has not been set, using platform encoding GBK 解决方案: 在下加入 UTF-8 如果是maven3,则只需要 UTF-8 2、m2e打包时出现错误:Unable to locate the Javac Compiler in XXX\tool.jar 我们知道maven的class编译需要通过jdk完成,m2e是使用的eclipse的环境配置,我们来看看eclipse环境怎么配置的。
重写WorkbenchPage的必要性在哪里? 比如有一个需求,比如屏蔽编辑器的关闭功能,或者把关闭编辑器按钮的实际功能转为隐藏编辑器 前一个功能还可以通过重写一系列的类来完成,后面这个功能几乎是无法完成的。
早前的时候写了一篇《在插件里应用hsqldb和hibernate》 但是之前的方法只适用于equinox环境,并不能算是hibernate和osgi的完整整合,昨天终于完成了felix+hibernate的整合方式,现做一个完整记录。
假如写这样的一段代码: int i; { int j=1; i=j; } 如果这段代码是存在于类定义区域,那么我们知道它是个普通的语句块,用于初始化类属性的内容,它会在类实例化的时候被调用,里面可以执行一些方法。
GEF编辑器遵循MVC模式。在这里Controller既是org.eclipse.gef.EditPart。它的行为是可以被一系列的策略(org.eclipse.gef.EditPolicy)确定的,见AbstractEditPolicy的方法: /** * Creates...
创建一个SWT的Table,可以通过自己控制Table、TableColumn以及TableItem来实现 这里不详述,更好的方式则是使用jface的TableViewer来实现MVC表格。 首先我们要准备Model,如: View Code public class BTDC...
先列出一个json的例子: var j={ identifier:"id", label:"id", items:[ { id:"userConfig", title:"用户配置", ...
上一篇Dojo:主题(theme)切换以及Div蒙板覆盖中使用到了一个组合的功能块。 由一个div作为容器,一个img作为图片展示,以及一个div作为蒙板的组合效果。 其中,蒙板div的动作是由Dojo实现的。
主题的切换本质上来说即使:1、图片的改变;2、颜色的改变。 以上两点都是可以css控制的,所以在设计之初,就应该把需要被主题控制的css统一到一个css文件中,同一个主题的图片也要分开归类文件夹。 下面说一下Dojo的主题切换实现: Html片段: 从linked引入的css文件,有disabled属性可以控制css是否可用。
Hibernate的映射配置单如下: DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.
Eclipse有自己的一套ClassLoader机制 比如OSGI Bundle是符合OSGI规范的 同时,它还有一些额外的和Bundle机制不冲突的ClassLoader机制 比如Buddy 假设一下情况存在: 1、插件A需要被插件B依赖 2、插件A需要插件B的某些信息(类,资源) 3、插件A需要在本地ClassLoader中获得,而非通过Bundle获得(这是可能由于使用了某些依赖反射的第三方包) 我选择使用Buddy。
Bundle State Description INSTALLED The bundle has been successfully installed. RESOLVED All Java classes that the bundle needs are available.
最近计划用插件化的hibernate和嵌入式数据库来完成一些功能,目前使用的数据库是HsqlDB和Derby。 hibernate独立一个插件出来,mapping信息在本插件内维护,数据库的cfg信息则由数据库插件维护。
最近实现的一系列功能(权限管理,索引持久化等)都涉及到了持久化问题 之前做了一个基于XML的管理插件,只需要在第一次读取的时候使用到XML,之后数据来自缓存,这样可以满足权限管理的功能,但是一旦权限发生动态的变化(将来的需求谁都不清楚啊……),就无法满足了。
早前一直对单例模式和静态工具类的功能重叠有些疑惑,昨天做了一个功能,忽然发现了一些单例可以实现但是静态工具类无法满足的需求。 我有一个接口IAuthorization: View Code /** * 所有需要配置权限的功能块都必须实现本接口 * * @author...
当一个类有可能会和其他类发生比较的时候,我们会重写equals方法,但大多数情况下,都忽略了重写hashCode方法。 这里说一下重写hashCode的必要性。 当我们使用HashSet或者HashMap的时候,在比对value|key是否存在时,会调用hashCode方法。
IllegalArgumentException 参数值不合适 IllegalStateException 对这个方法的调用而言,对象状态不合适 NullPointException 空指针 IndexOfBoundException 下标越界 ConcurrentModificationE...
先列出一个类: package usage._of._final; public class ClassWithOutFinal { public void method1(int i) { System.out.println(2 * method2(i)); } public int method2(int i) { return i; } } 该类有两个方法,method1调用到了method2,该类并没有被final修饰,也没有文档说明method1的结果是被method2影响的。
摘自 Effective Java 1、把某个非零常数值,如17,保存在一个叫result的int类型变量中。 2、对于对象中每一个相关域f,完成以下步骤: a.为该域计算int类型的散列码c: i.如果该域是boolean类型,则计算(f?0:1)。
dojo.xhrGet({ url: "/dojoHttpServlet?service=jsp_showPerms", handleAs: "json", load: function(data) { if(data==null){ console.
一段dojo定义类的代码: dojo.declare( "TestClass", null, { id:"", info: { name : "",age:""}, staticValue:{count:0},...
这里利用了Array.newInstance(..)方法,但还有一个问题,当List的长度为0的时候,是获得不了T的具体class的。好在长度为0的数组没有意义,所以干脆返回了null。 代码如下: public static T[] getArray(List collection) {if (collection == null || collection.
abstract描述的类即是抽象类,描述的方法即是抽象方法。 被此关键字描述的类,不能直接实例化,需要匿名。 如果一个类里面包含抽象方法,则该类必须声明为抽象类。 抽象方法没有实现,子类如果不是抽象类,则必须实现父类的抽象方法。
“要是你没选这行,你会去做什么?” “回老家,教书。”坐在对面的那个面色灰败的女编辑说话时候从不正眼看人,厚实的眼镜片上反射出电脑屏幕四四方方的白色映像。整个办公室都是噼里啪啦的键盘敲击声,和她的回答一样干脆。
itext version 2.1.7 itext操作rtf文档其实还是挺方便的。 itext为图片操作提供了一个类com.lowagie.text.Image,使用方法如下: static Image createImage(URL path) { Image image;try { image = Image.