【问题标题】:junit failures in hudson - swterror -No more handles哈德逊的junit失败-swterror-没有更多的句柄
【发布时间】:2013-12-24 11:04:00
【问题描述】:

我正在尝试在 hudson 服务器中构建我的 UI 项目。我在哈德逊遇到了junit失败。当我在本地构建项目时,构建成功。我正在尝试在哈德逊执行清洁和部署目标(maven 2.2.1)。

Hudson 中的错误消息:

错误信息 没有更多的把手 堆栈跟踪 在 org.eclipse.swt.SWT.error(SWT.java:4308) 在 org.eclipse.swt.SWT.error(SWT.java:4197) 在 org.eclipse.swt.SWT.error(SWT.java:4168) 在 org.eclipse.swt.widgets.Widget.error(Widget.java:468) 在 org.eclipse.swt.widgets.Control.createHandle(Control.java:704) 在 org.eclipse.swt.widgets.Label.createHandle(Label.java:199) 在 org.eclipse.swt.widgets.Control.createWidget(Control.java:744) 在 org.eclipse.swt.widgets.Control.(Control.java:112) 在 org.eclipse.swt.widgets.Label.(Label.java:101) 在 com.cerner.revenuecycle.ui.common.themes.Components.createLabel(Components.java:161) 在 com.cerner.financials.ui.chargeentry.internal.anesthesia.AnesthesiaComposite.renderCalculationGroup(AnesthesiaComposite.java:627) 在 com.cerner.financials.ui.chargeentry.internal.anesthesia.AnesthesiaComposite.renderRightComposite(AnesthesiaComposite.java:487) 在 com.cerner.financials.ui.chargeentry.internal.anesthesia.AnesthesiaComposite.render(AnesthesiaComposite.java:253) 在 com.cerner.financials.ui.chargeentry.internal.anesthesia.AnesthesiaComposite.(AnesthesiaComposite.java:174) 在 com.cerner.financials.ui.chargeentry.internal.anesthesia.AnesthesiaCompositeTest.setUp(AnesthesiaCompositeTest.java:98) 在 com.cerner.engineering.pde.test.EclipseTestRunner.run(EclipseTestRunner.java:313) 在 com.cerner.engineering.pde.test.MultiTestRunnerApplication.runOneTest(MultiTestRunnerApplication.java:191) 在 com.cerner.engineering.pde.test.MultiTestRunnerApplication.runTests(MultiTestRunnerApplication.java:138) 在 com.cerner.engineering.pde.test.MultiTestRunnerApplication.run(MultiTestRunnerApplication.java:37) 在 org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587) 在 org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198) 在 org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 在 org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 在 org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344) 在 org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 在 org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) 在 org.eclipse.core.launcher.Main.basicRun(Main.java:280) 在 org.eclipse.core.launcher.Main.run(Main.java:977) 在 org.eclipse.core.launcher.Main.main(Main.java:952)

我用谷歌搜索了很多,发现了一些人们遇到同样问题的链接。建议在 Hudson 服务器中启用“Run XVnc on build”。但是我的 Hudson 服务器运行 windows Server 2008。我不认为,我需要 Vnc。请帮我解决这个问题。谢谢。

【问题讨论】:

    标签: java junit swt eclipse-rcp hudson


    【解决方案1】:

    假设您的 JUnit-Test 正在设置的 UI 所创建的 UI 元素 (=handles) 超出了您的服务器可以处理的数量,那么有两个选项可以解决您的问题:

    1. 注意处理您的小部件:一般规则是 如果您创建一个小部件,您就是处置它的人 (处置方法)。
    2. 增加 Windows Server 的句柄限制 2008年可以画。由于我不熟悉 Windows Server 2008,所以我 无法告诉您必须修改哪个注册表项。 Windows 通常对整体和每个进程的句柄有限制。

    【讨论】:

      猜你喜欢
      • 2012-01-31
      • 2012-05-24
      • 1970-01-01
      • 1970-01-01
      • 2010-12-22
      • 1970-01-01
      • 1970-01-01
      • 2011-06-20
      • 1970-01-01
      相关资源
      最近更新 更多