2011-01-25 2 views
5

Обычно я использую Eclipse IDE для проекта GAE + GWT.Ошибка GWT + GAE: сбой org.mortbay.jetty.nio.SelectChannelConnector, запустив GWTTestCase-JUnit

Окружающая среда: GWT2.1.1, GAE 1.4.0

В GWT проекта (без GAE), используя GWTTestCase в проекте ,,, → без проблем. хорошо работать.

В GWT проекта + GAE, используя GWTTestCase в проекте GWT ,,, → При выполнении теста, который проходит GWTTestCase, ошибка приходит.

Ошибка ниже: java.lang.NoSuchMethodError:.. Org.mortbay.thread.Timeout (Ljava/языки/объекта;) V в org.mortbay.io.nio.SelectorManager $ SelectSet (SelectorManager.java : 306) at org.mortbay.io.nio.SelectorManager.doStart (SelectorManager.java:223) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:39) at org.mortbay.jetty.nio .SelectChannelConnector.doStart (SelectChannelConnector.java:303) at org.mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:39) at org.mortbay.jetty.Server.doStart (Server.java:233) at org .mortbay.component.AbstractLifeCycle.start (AbstractLifeCycle.java:39) на com.google.gwt.dev.shell.jetty.JettyLauncher.start (JettyLauncher.java:542) на com.google.gwt.dev.DevMode.doStartUpServer (DevMode.java:431) на com.google. gwt.dev.DevModeBase.startUp (DevModeBase.java:1053) at com.google.gwt.junit.JUnitShell.getUnitTestShell (JUnitShell.java:680) at com.google.gwt.junit.JUnitShell.runTest (JUnitShell. java: 625) at com.google.gwt.junit.client.GWTTestCase.runTest (GWTTestCase.java:456) at junit.framework.TestCase.runBare (TestCase.java:134) at junit.framework.TestResult $ 1 .protect (TestResult.java:110) at junit.framework.TestResult.runProtected (TestResult.java:128) at junit.framework.TestResult.run (TestResult.java:113) в junit.framework.TestCase.run (TestCase.java:124) at com.google.gwt.junit.client.GWTTestCase.run (GWTTestCase.java:311) at junit.framework.TestSuite.runTest (TestSuite. java: 232) at junit.framework.TestSuite.run (TestSuite.java:227) at org.junit.internal.runners.JUnit38ClassRunner.run (JUnit38ClassRunner.java:83) at org.eclipse.jdt.internal. junit4.runner.JUnit4TestReference.run (JUnit4TestReference.java:49) at org.eclipse.jdt.internal.junit.runner.TestExecution.run (TestExecution.java:38) at org.eclipse.jdt.internal.junit. runner.RemoteTestRunner.runTests (RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java:683) at org.eclipse. jdt.internal.junit.runner.RemoteTestRunner.run (RemoteTestRunner.java:390) на org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main (RemoteTestRunner.java:197)

Источники теста ниже: package com.companyName.client;

import com.google.gwt.junit.client.GWTTestCase; 

public class Test extends GWTTestCase { 


@Override 
public String getModuleName() { 
    return "com.companyName.projectName"; 
} 


/** 
* test 
*/ 
public void testNumburOne() { 
    System.out.println("testNumburOne"); 
} 

} 

без GAE, который будет работать нормально.

ответ

13

Нет необходимости удалить пакет. Просто убедитесь, что банкомат GWT перенаправлен впереди контейнера appengine в пути сборки.

+0

Правильно. Благодаря! – Tinoue

+0

Почему я просто не пришел в StackOverflow и прочитал это несколько часов назад? Большое спасибо! –

+0

Да, все. Так просто ... и я уже переустановил Eclipse. благодаря – Johanna

1

Прошу прощения за поздний ответ, но у меня только была эта проблема.

У вас конфликт ClassPath.

Пакеты org.mortbay включены в библиотеки GWT и Appengine.

Я просто удалил их из своей копии библиотеки Appengine, чтобы они все еще были доступны из библиотеки GWT. Кажется, все в порядке.

BestRegards

Geoff Брукнер

+0

Спасибо! Легко понять. Я попробую. – Tinoue

+0

Замечательно! Благодаря! – jldupont

Смежные вопросы