Скомпилировать плагин JS-Test-Driver и установить его на Eclipse 3.5.1 Galileo? - PullRequest
1 голос
/ 05 февраля 2010

Я загрузил исходный код js-test-driver: http://js -test-driver.googlecode.com / svn / tags / 1.2

Он прекрасно компилируется, но один из модульных тестов не проходит:

[junit] Tests run: 1, Failures: 1, Errors: 0, Time elapsed: 0.012 sec
[junit] Test com.google.jstestdriver.eclipse.ui.views.FailureOnlyViewerFilterTest FAILED

Я использую: - ANT 1.7.1 - javac 1.6.0_12

И я пытаюсь установить плагин js-test-driver на Eclipse 3.5.1 Galileo

Несмотря на провал теста, я установил плагин в свой каталог C: \ eclipse \ dropins \ js-test-driver, скопировав (экспортируя из svn) скомпилированные каталоги функций и плагинов, чтобы посмотреть, даст ли он какие-либо подсказки в чем проблема.

Когда я запустил Eclipse, добавил плагин на панель, используя Window-> Show View-> Other ... Other-> JsTestDriver

Плагин для панели добавлен, но вместо плагина на панели отображается следующая ошибка:

Не удалось создать представление: плагину com.google.jstestdriver.eclipse.ui не удалось загрузить класс com.google.jstestdriver.eclipse.ui.views.JsTestDriverView.

И затем ниже, после получения сведений, я получаю следующую трассировку стека:

java.lang.ClassNotFoundException: com.google.jstestdriver.eclipse.ui.views.JsTestDriverView
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:494)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:326)
    at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:231)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1193)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:160)
    at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:874)
    at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
    at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:51)
    at org.eclipse.ui.internal.WorkbenchPlugin$1.run(WorkbenchPlugin.java:267)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.internal.WorkbenchPlugin.createExtension(WorkbenchPlugin.java:263)
    at org.eclipse.ui.internal.registry.ViewDescriptor.createView(ViewDescriptor.java:63)
    at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:324)
    at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:226)
    at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
    at org.eclipse.ui.internal.Perspective.showView(Perspective.java:2229)
    at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1067)
    at org.eclipse.ui.internal.WorkbenchPage$20.run(WorkbenchPage.java:3816)
    at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3813)
    at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3789)
    at org.eclipse.ui.handlers.ShowViewHandler.openView(ShowViewHandler.java:165)
    at org.eclipse.ui.handlers.ShowViewHandler.openOther(ShowViewHandler.java:109)
    at org.eclipse.ui.handlers.ShowViewHandler.execute(ShowViewHandler.java:77)
    at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:294)
    at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
    at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
    at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
    at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
    at org.eclipse.ui.internal.ShowViewMenu$3.run(ShowViewMenu.java:141)
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3880)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3473)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

Кроме того, если я перехожу к настройкам в Window-> Preferences и пытаюсь просмотреть настройки драйвера JS Test, я получаю следующее диалоговое окно:

Произошла проблема Невозможно создать выбранную страницу настроек. com.google.jstestdriver.eclipse.ui.WorkbenchPreferencePage

Спасибо, Эндрю Дж. Лир

Ответы [ 2 ]

1 голос
/ 23 июля 2012

Мое решение этой проблемы основано на комментарии http://code.google.com/p/js-test-driver/wiki/UsingTheEclipsePlugin:

Если при установке плагина Eclipse в списке программного обеспечения есть элемент с надписью «Нет категорийных элементов», снимите флажок «Группировать элементы по категориям» ниже.

Это исправило вышеуказанные ошибки, которые я получал после первоначальной установки, когда отображал или пытался настроить вкладку плагина.

0 голосов
/ 18 марта 2010

В этом сообщении об ошибке говорится, что классовые загрузчики не нашли класс com.google.jstestdriver.eclipse.ui.views.JsTestDriverView. Возможные решения:

  • Trivial: есть ли файл с правильно названным классом внутри скомпилированного решения?
  • Если существует правильный файл класса, посмотрите источник этого кода View и посмотрите, что он пытается загрузить.
  • Проверьте наличие зависимостей, так как в случае неудовлетворенных зависимостей (которые записаны неправильно), возможно, что загрузчики классов не найдут некоторые классы.
  • Найдите классы активаторов в проекте и проверьте, что они делают. Они также могут создавать такие проблемы.
...