使用Eclipse时,我使用键盘箭头浏览包浏览器树.
在Windows中,我可以通过按键展开折叠节点→.在Linux中我需要按Shift+ →.有没有办法重新配置这个Shift不需要?
我有一个java junit测试,它在开发机器上单独运行时通过.我们还有一个hudson作业,它运行所有测试,通过ant,在带有Java 1.5的Mac OS X 10.4节点上调用.测试在hudson构建中传递到最近,但是现在(没有相关的代码更改)每次测试失败,并出现以下错误:
错误信息
分叉的Java VM异常退出.请注意,报告中的时间不会反映VM退出之前的时间.
堆栈跟踪
junit.framework.AssertionFailedError:分叉的Java VM异常退出.请注意,报告中的时间不会反映VM退出之前的时间.
谷歌搜索显示许多其他人似乎遇到了同样的问题,但在那里我找不到任何答案.
如果在类中我有一个ConcurrentHashMap实例,它将被多个线程修改和读取,我可能会这样定义:
public class My Class {
private volatile ConcurrentHashMap<String,String> myMap = new ConcurrentHashMap<String,String>();
...
}
Run Code Online (Sandbox Code Playgroud)
添加final到myMap字段会导致错误,说我只能使用final或volatile.为什么不能两者兼而有之?
如何在JFace对话框中创建超链接,单击此按钮可在默认Web浏览器中打开链接.一个完整的例子很有用.我知道有一个org.eclipse.jface.text.hyperlink包,但我找不到合适的例子.
该应用程序是基于Eclipse 3.6的RCP(因此jface版本3.5.2)在Windows 7上运行.
我有一个自定义View类,包含一个TableViewer并调用refresh()它.有时,但不是经常导致下面的堆栈跟踪.它是从UI线程中调用的.我怀疑问题是其他代码将支持列表更改为表,但执行此操作的任何代码也在syncExec或asyncExec方法中运行,所以我不明白它是如何在更改之间的同步问题表项和刷新查看器.
我有什么想法可以防止这种情况发生?
!ENTRY org.eclipse.jface 4 2 2010-10-20 09:22:06.140 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jface". !STACK 0 org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:3884) at org.eclipse.swt.SWT.error(SWT.java:3799)
at org.eclipse.swt.SWT.error(SWT.java:3770) at org.eclipse.swt.widgets.Widget.error(Widget.java:463)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:336)
at org.eclipse.swt.widgets.Widget.getData(Widget.java:521)
at org.eclipse.jface.viewers.AbstractTableViewer.setSelectionToWidget(AbstractTableViewer.java:921)
at org.eclipse.jface.viewers.StructuredViewer.setSelectionToWidget(StructuredViewer.java:1711)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1399)
at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1353)
at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1455)
at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:537)
at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1414)
...
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:179)
Run Code Online (Sandbox Code Playgroud) 假设我有一个像'age'这样的谓词,其中所有年龄三元组的值都是整数文字.什么SPARQL查询将返回数据中年龄最大的主题?
我有一个球衣服务和单元测试(使用泽西客户端),可以使用3 FormDataParams:
@Path("myService")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@POST
@Produces(MediaType.TEXT_PLAIN)
public Response doService(@FormDataParam("p1") String v1,
@FormDataParam("p2") InputStream v2,
@FormDataParam("p3") InputStream v3) throws IOException {
Run Code Online (Sandbox Code Playgroud)
测试代码是这样的:
FormDataMultiPart fdmp = new FormDataMultiPart();
fdmp.field("p1", v1);
fdmp.field("p2", v2);
fdmp.field("p3", v3);
ClientResponse response = service.path("myService").type(MediaType.MULTIPART_FORM_DATA).accept(MediaType.TEXT_PLAIN).post(ClientResponse.class, fdmp);
Run Code Online (Sandbox Code Playgroud)
问题是当我更改它以支持p1字段的多个值时.我更改了服务签名部分
@FormDataParam("p1") String v1,
Run Code Online (Sandbox Code Playgroud)
至
@FormDataParam("p1") List<String> v1,
Run Code Online (Sandbox Code Playgroud)
但后来我明白了
04-Apr-2012 18:56:59 com.sun.grizzly.http.servlet.ServletAdapter doService
SEVERE: service exception:
java.lang.IllegalArgumentException: wrong number of arguments
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:172)
at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:67)
at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:265)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:133)
at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:83)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:133)
at …Run Code Online (Sandbox Code Playgroud) 假设我有一个名为'Blog'的Django模型,主键字段为'id',是否有一个我可以运行的查询,它将返回一个字典,其中包含索引Blog模型实例的id值的键?
in_bulk()看起来像我想要的东西,但在这种情况下它需要一个特定id值的列表,例如
Blog.objects.in_bulk([1])
Run Code Online (Sandbox Code Playgroud)
会给
{1: <Blog: Beatles Blog>}
Run Code Online (Sandbox Code Playgroud)
该文件说,如果你传递一个空列表,你将得到一个空字典,那么有什么方法可以让所有的价值回来?
我有一个ViewPart包含ScrolledForm从a创建的View类(extends )FormToolkit.当某些事件发生在应用程序的其他视图中时,我想在此视图中更改表单并让它实时更新给用户.
我现在添加了属性更改支持支持,并在视图中添加了以下方法
public void propertyChange(PropertyChangeEvent event) {
form.dispose();
toolkit.dispose();
createForm( event );
form.redraw();
}
Run Code Online (Sandbox Code Playgroud)
在哪里createForm( event )根据事件重新创建表单.
问题是UI在此之后不显示新表单.我知道表单创建正常,因为如果我拖动View和另一个视图之间的边框来调整它的大小,那么View会立即更新以显示新表单.如何以编程方式强制在UI中强制刷新视图?