You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Ted Kirby (JIRA)" <ji...@apache.org> on 2010/10/22 21:58:16 UTC
[jira] Commented: (GERONIMODEVTOOLS-677) Testsuite not working on
Mac cocoa
[ https://issues.apache.org/jira/browse/GERONIMODEVTOOLS-677?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12923994#action_12923994 ]
Ted Kirby commented on GERONIMODEVTOOLS-677:
--------------------------------------------
https://bugs.eclipse.org/bugs/show_bug.cgi?id=303869 has some info on the warning:
1. It suggests a jvm arg of -XstartOnFirstThread may be a bypass
2. Apple: Bug ID# 7840189 may fix it.
The bug fixed it for them on Mac OS 10.6 (Snow Leopard).
The bug is in this update: http://developer.apple.com/library/mac/#releasenotes/CrossPlatform/JavaSnowLeopardUpdate2LeopardUpdate7RN/ResolvedIssues/ResolvedIssues.html#//apple_ref/doc/uid/TP40009967-CH3-DontLinkElementID_28
The update is also Java for Mac OS X 10.5 Update 7, taking java 6 to 1.6.0_20.
I have Leopard (10.5), and java 6 1.6.0_22, and I still have the problem.
However, the good news is that a jvm arg of -XstartOnFirstThread gets past this problem!
I used it in testsuite/plugins/org.apache.geronimo.testsuite.common/library.xml:
<target name="java-test">
....
<jvmarg line="${vmargs} ${extraVMargs} *-XstartOnFirstThread*"/>
This did launch and eclipse instance on my Mac. An initial test failed, however, since the menus are different on Mac v. Windows. In windows, it's Help->About Eclipse. On Mac, it's Eclipse->About Eclipse, but I could see the code open the Apple Icon in top left corner, and just hang, with this error in
testsuite/launcher/results/junit/org.apache.geronimo.testsuite.v30.ui.EclipseUITest.xml:
eclipse.buildId=M20100909-0800
java.version=1.6.0_22
java.vendor=Apple Inc.
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments: -application org.eclipse.test.uitestapplication formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,/Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/org.apache.geronimo.testsuite.v30.ui.EclipseUITest.xml -testPluginName org.apache.geronimo.testsuite.v30 -className org.apache.geronimo.testsuite.v30.ui.EclipseUITest
Command-line arguments: -application org.eclipse.test.uitestapplication -data /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/jdt_folder formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,/Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/org.apache.geronimo.testsuite.v30.ui.EclipseUITest.xml -testPluginName org.apache.geronimo.testsuite.v30 -className org.apache.geronimo.testsuite.v30.ui.EclipseUITest -os macosx -ws cocoa -arch x86_64 -consolelog
!ENTRY org.eclipse.core.net 1 0 2010-10-22 15:37:54.023
!MESSAGE System property http.nonProxyHosts has been set to local|*.local|169.254/16|*.169.254/16 by an external source. This value will be overwritten using the values from the preferences
testEclipseUI: Activating Shell {Resource - Eclipse Platform}
initial validation and set up
testEclipseUI: 61.494 sec.
!ENTRY org.eclipse.ui 4 0 2010-10-22 15:39:05.878
!MESSAGE Unhandled event loop exception
!STACK 0
org.eclipse.swt.SWTException: Failed to execute runnable (abbot.swt.tester.ActionFailedException: java.lang.NoSuchFieldException: menus)
at org.eclipse.swt.SWT.error(SWT.java:4083)
at org.eclipse.swt.SWT.error(SWT.java:3998)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3586)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3279)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
at org.eclipse.jface.window.Window.open(Window.java:801)
at org.eclipse.ui.internal.about.AboutHandler.execute(AboutHandler.java:32)
at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:293)
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.actions.CommandAction.runWithEvent(CommandAction.java:157)
at org.eclipse.ui.internal.actions.CommandAction.run(CommandAction.java:171)
at org.eclipse.ui.internal.cocoa.CocoaUIEnhancer.runAction(CocoaUIEnhancer.java:416)
at org.eclipse.ui.internal.cocoa.CocoaUIEnhancer.aboutMenuItemSelected(CocoaUIEnhancer.java:520)
at org.eclipse.ui.internal.cocoa.CocoaUIEnhancer.actionProc(CocoaUIEnhancer.java:540)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
at org.eclipse.swt.widgets.Display.applicationNextEventMatchingMask(Display.java:4483)
at org.eclipse.swt.widgets.Display.applicationProc(Display.java:4739)
at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
at org.eclipse.swt.internal.cocoa.NSApplication.nextEventMatchingMask(NSApplication.java:85)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3271)
at abbot.swt.junit.extensions.UserThread.sync(UserThread.java:94)
at abbot.swt.junit.extensions.UserThread.syncExec(UserThread.java:25)
at abbot.swt.junit.extensions.SWTTestCase.runBare(SWTTestCase.java:250)
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)
at junit.framework.TestCase.run(TestCase.java:124)
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 junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:39)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:376)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:209)
at org.eclipse.test.UITestApplication$3.run(UITestApplication.java:195)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3586)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3279)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
at org.eclipse.test.UITestApplication.runApplication(UITestApplication.java:138)
at org.eclipse.test.UITestApplication.run(UITestApplication.java:60)
at org.eclipse.test.UITestApplication.start(UITestApplication.java:210)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
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:369)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
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 org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
at org.eclipse.core.launcher.Main.main(Main.java:34)
Caused by: abbot.swt.tester.ActionFailedException: java.lang.NoSuchFieldException: menus
at abbot.swt.finder.WidgetHierarchyImpl$2.run(WidgetHierarchyImpl.java:159)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:179)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4233)
at abbot.swt.utilities.Displays.syncExec(Displays.java:113)
at abbot.swt.finder.WidgetHierarchyImpl.getWidgets(WidgetHierarchyImpl.java:132)
at abbot.swt.finder.WidgetHierarchyImpl.getChildren(WidgetHierarchyImpl.java:76)
at abbot.swt.finder.WidgetHierarchyImpl.getChildren(WidgetHierarchyImpl.java:1)
at abbot.swt.hierarchy.VisitableImpl.acceptInternal(VisitableImpl.java:17)
at abbot.swt.hierarchy.VisitableImpl.acceptInternal(VisitableImpl.java:29)
at abbot.swt.hierarchy.HierarchyImpl.accept(HierarchyImpl.java:30)
at abbot.swt.junit.extensions.SWTTestCase$3.run(SWTTestCase.java:138)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
... 64 more
Caused by: java.lang.NoSuchFieldException: menus
at java.lang.Class.getDeclaredField(Class.java:1882)
at abbot.swt.finder.WidgetHierarchyImpl$2.run(WidgetHierarchyImpl.java:147)
... 77 more
I am going to change focus to windows for further testsuite testing.
> Testsuite not working on Mac cocoa
> ----------------------------------
>
> Key: GERONIMODEVTOOLS-677
> URL: https://issues.apache.org/jira/browse/GERONIMODEVTOOLS-677
> Project: Geronimo-Devtools
> Issue Type: Bug
> Components: eclipse-plugin
> Environment: Mac OS X
> Reporter: Ted Kirby
> Assignee: Delos Dai
>
> It looks like there is a fatal cocoa restriction currently blocking the testsuite from running on Mac OS X, based on this message:
> "***WARNING: Display must be created on main thread due to Cocoa restrictions."
> details:
> [INFO] ------------------------------------------------------------------------
> [INFO] Building Geronimo Eclipse Plugin :: Testsuite :: Launcher
> [INFO] task-segment: [install]
> [INFO] ------------------------------------------------------------------------
> ...
> [INFO] [antrun:run {execution: run-testsuite}]
> [INFO] Executing tasks
> init:
> Please install Aries tools manually for eclipse under testsuite/launcher/eclipse,
> Free Aries tools download URL is http://www.ibm.com/developerworks/rational/downloads/10/rationaldevtoolsforosgiapplications.html
> Press Enter to continue...
>
> mac:
> [echo] Launching Equinox with -Dos=macosx -Dws=cocoa
> [java] Buildfile: testsuite.xml
> [java]
> [java] all:
> [java]
> [java] testsuite.v30:
> [java]
> [java] junit:
> [java]
> [java] init:
> [java]
> [java] suite:
> [java] [delete] Deleting directory /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/jdt_folder
> [java] [mkdir] Created dir: /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/jdt_folder/src
> [java] [copy] Copying 13 files to /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/jdt_folder/src
> [java]
> [java] init:
> [java]
> [java] ui-test:
> [java]
> [java] java-test:
> [java] [echo] Running org.apache.geronimo.testsuite.v30.ui.aries.NewOSGiBundleTest. Result file: /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/results/junit/org.apache.geronimo.testsuite.v30.ui.aries.NewOSGiBundleTest.xml.
> [java]
> [java] BUILD FAILED
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/testsuite.xml:72: The following error occurred while executing this line:
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/testsuite.xml:56: The following error occurred while executing this line:
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/testsuite.xml:38: The following error occurred while executing this line:
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/testsuite.xml:46: The following error occurred while executing this line:
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/plugins/org.apache.geronimo.testsuite.v30-3.0.0/test.xml:94: The following error occurred while executing this line:
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/plugins/org.apache.geronimo.testsuite.common/library.xml:74: The following error occurred while executing this line:
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/plugins/org.apache.geronimo.testsuite.common/library.xml:89: Java returned: 13
> [java]
> [java] Total time: 19 seconds
> [java] An error has occurred. See the log file
> [java] /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/workspace/.metadata/.log.
> [INFO] ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO] ------------------------------------------------------------------------
> [INFO] An Ant BuildException has occured: The following error occurred while executing this line:
> /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/build.xml:99: The following error occurred while executing this line:
> /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/build.xml:83: Java returned: 13
> [INFO] ------------------------------------------------------------------------
> [INFO] For more information, run Maven with the -e switch
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time: 9 minutes 5 seconds
> [INFO] Finished at: Mon Oct 18 11:30:49 EDT 2010
> [INFO] Final Memory: 427M/507M
> [INFO] ------------------------------------------------------------------------
> from testsuite/launcher/results/junit/org.apache.geronimo.testsuite.v30.ui.aries.NewOSGiBundleTest.txt :
> ***WARNING: Display must be created on main thread due to Cocoa restrictions.
> !SESSION 2010-10-18 11:30:29.172 -----------------------------------------------
> eclipse.buildId=M20100909-0800
> java.version=1.6.0_20
> java.vendor=Apple Inc.
> BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
> Framework arguments: -application org.eclipse.test.uitestapplication formatter=org.apache.tools.ant.taskdefs.optional.junit.X
> MLJUnitResultFormatter,/Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/org.apache.geronimo.
> testsuite.v30.ui.aries.NewOSGiBundleTest.xml -testPluginName org.apache.geronimo.testsuite.v30 -className org.apache.geronimo.
> testsuite.v30.ui.aries.NewOSGiBundleTest
> Command-line arguments: -application org.eclipse.test.uitestapplication -data /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk
> /testsuite/launcher/eclipse/eclipse/jdt_folder formatter=org.apache.tools.ant.taskdefs.optional.junit.XMLJUnitResultFormatter,
> /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/org.apache.geronimo.testsuite.v30.ui.aries.
> NewOSGiBundleTest.xml -testPluginName org.apache.geronimo.testsuite.v30 -className org.apache.geronimo.testsuite.v30.ui.aries.
> NewOSGiBundleTest -os macosx -ws cocoa -arch x86_64 -consolelog
> !ENTRY org.eclipse.osgi 4 0 2010-10-18 11:30:44.403
> !MESSAGE Application error
> !STACK 1
> org.eclipse.swt.SWTException: Invalid thread access
> at org.eclipse.swt.SWT.error(SWT.java:4083)
> at org.eclipse.swt.SWT.error(SWT.java:3998)
> at org.eclipse.swt.SWT.error(SWT.java:3969)
> at org.eclipse.swt.widgets.Display.error(Display.java:1027)
> at org.eclipse.swt.widgets.Display.createDisplay(Display.java:794)
> at org.eclipse.swt.widgets.Display.create(Display.java:777)
> at org.eclipse.swt.graphics.Device.<init>(Device.java:130)
> at org.eclipse.swt.widgets.Display.<init>(Display.java:668)
> at org.eclipse.swt.widgets.Display.<init>(Display.java:659)
> at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:708)
> at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161)
> at org.eclipse.ui.internal.ide.application.IDEApplication.createDisplay(IDEApplication.java:145)
> at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:88)
> at org.eclipse.test.UITestApplication.runApplication(UITestApplication.java:138)
> at org.eclipse.test.UITestApplication.run(UITestApplication.java:60)
> at org.eclipse.test.UITestApplication.start(UITestApplication.java:210)
> at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> 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:369)
> at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
> 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 org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
> at org.eclipse.equinox.launcher.Main.main(Main.java:1383)
> at org.eclipse.core.launcher.Main.main(Main.java:34)
> An error has occurred. See the log file
> /Users/tedkirby/svn/gdvtls/eclipse-plugin/trunk/testsuite/launcher/eclipse/eclipse/jdt_folder/.metadata/.log.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.