[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [tycho-user] Weird error when using p2-installable-unit
|
just realized that we put -d32 to ensure it uses 32bit jam for testing, but maybe the platform configuration
sees we are running 64bit and resolves against that ?
/max
On Nov 29, 2011, at 19:50, Igor Fedorenko wrote:
> Can you attach -X -Dtycho.debug.resolver=<artufactId> log for the SWT failure?
>
> --
> Regards,
> Igor
>
> On 11-11-29 1:47 PM, Max Rydahl Andersen wrote:
>>
>> every attempt I do on this causes SWT errors for me when running the tests.
>>
>> I'm lost :(
>>
>> /max
>>
>> On Nov 29, 2011, at 17:26, Igor Fedorenko wrote:
>>
>>> <environments combine.self="override"> workaround works for the small
>>> example project I setup (see attached).
>>>
>>> For the proper solution I've opened
>>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=365090
>>>
>>> --
>>> Regards,
>>> Igor
>>>
>>> On 11-11-29 6:51 AM, Max Rydahl Andersen wrote:
>>>>> Looks like your build has multiple os/ws/arch configured and resolution
>>>>> fails when trying to resolve for win32/win32/x86 combo. Here is the
>>>>> relevant log message (from right above the error ;-) )
>>>>
>>>> Couldn't see the forrest for trees.
>>>>
>>>>> [INFO] Cannot complete the request. Generating details.
>>>>> [INFO] {org.osgi.framework.executionenvironment=OSGi/Minimum-1.0,OSGi/Minimum-1.1, osgi.ws=win32, osgi.arch=x86, osgi.os=win32, org.eclipse.update.install.features=true, org.osgi.framework.system.packages=}
>>>>> [ERROR] Cannot resolve project dependencies:
>>>>> [ERROR] You requested to install 'bundle org.eclipse.jdt.launching.macosx 3.2.100.v20110509' but it could not be found
>>>>>
>>>>>
>>>>> Try adding the following to your test project pom.xml (insert<version>,
>>>>> if you don't have corresponding<pluginManagement>).
>>>>>
>>>>>
>>>>> <build>
>>>>> <plugins>
>>>>> <plugin>
>>>>> <groupId>org.eclipse.tycho</groupId>
>>>>> <artifactId>target-platform-configuration</artifactId>
>>>>> <configuration>
>>>>> <environments combine.self="override">
>>>>> </environments>
>>>>> </configuration>
>>>>> </plugin>
>>>>> </plugins>
>>>>> </build>
>>>> When I do that I get:
>>>>
>>>> !ENTRY org.eclipse.osgi 4 0 2011-11-29 12:47:59.109
>>>> !MESSAGE An error occurred while automatically activating bundle org.eclipse.ui.workbench (147).
>>>> !STACK 0
>>>> org.osgi.framework.BundleException: The activator org.eclipse.ui.internal.WorkbenchPlugin for bundle org.eclipse.ui.workbench is invalid
>>>> at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:171)
>>>> at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:679)
>>>> at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
>>>> …
>>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>>>> at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345)
>>>> at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)
>>>> at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207)
>>>> at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174)
>>>> at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
>>>> at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
>>>> at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
>>>> at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:191)
>>>> 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:344)
>>>> 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:622)
>>>> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
>>>> at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
>>>> at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
>>>> Caused by: java.lang.NoClassDefFoundError: org/eclipse/swt/SWTError
>>>> at java.lang.Class.getDeclaredConstructors0(Native Method)
>>>> at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
>>>> at java.lang.Class.getConstructor0(Class.java:2699)
>>>> at java.lang.Class.newInstance0(Class.java:326)
>>>> at java.lang.Class.newInstance(Class.java:308)
>>>> at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadBundleActivator(AbstractBundle.java:166)
>>>> ... 34 more
>>>> Caused by: java.lang.ClassNotFoundException: org.eclipse.swt.SWTError
>>>> at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513)
>>>> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
>>>> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
>>>> at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
>>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>>>> ... 40 more
>>>>
>>>> If I actually go and physically remove the other target platforms in my parent:
>>>>
>>>> <plugin>
>>>> <groupId>org.eclipse.tycho</groupId>
>>>> <artifactId>target-platform-configuration</artifactId>
>>>> <version>${tychoVersion}</version>
>>>> <configuration>
>>>> <resolver>p2</resolver>
>>>> <ignoreTychoRepositories>true</ignoreTychoRepositories>
>>>> <environments>
>>>> <environment>
>>>> <os>macosx</os>
>>>> <ws>cocoa</ws>
>>>> <arch>x86</arch>
>>>> </environment>
>>>> </environments>
>>>> </configuration>
>>>> </plugin>
>>>>
>>>>
>>>> Then it works!
>>>>
>>>> That is just weird because we got other stuff that is os specific.
>>>>
>>>> /max
>>>>
>>>>
>>>>
>>>>>
>>>>>
>>>>> This should tell Tycho to only resolve test project's dependencies for
>>>>> the current os/ws/arch. If this helps, please open a bugreport, Tycho
>>>>> should only resolve test runtime for the current system's os/ws/arch.
>>>>>
>>>>> --
>>>>> Regards,
>>>>> Igor
>>>>>
>>>>>
>>>>> On 11-11-28 7:45 PM, Max Rydahl Andersen wrote:
>>>>>>> You should see way more logs
>>>>>>
>>>>>> Yeah, I got it now.
>>>>>>
>>>>>>> For p2 you should see entire resolver data flow, separately for each os/ws/arch combo enabled in target resolver configuration
>>>>>>> * Available IUs: shows all installable units visible to the project
>>>>>>
>>>>>> Yes, launching.macosx is listed here
>>>>>>> * Root IUs: shows project installable unit(s)
>>>>>>
>>>>>>
>>>>>> Yes, launching.macosx is listed here
>>>>>>
>>>>>>> * Extra IUs: shows installable units generated from<dependency/>
>>>>>>> elements
>>>>>>
>>>>>>
>>>>>> Yes, launching.macosx is listed here
>>>>>>
>>>>>>> * Slice: shows installable units "reachable" from the root and extra IUs
>>>>>>
>>>>>> its not listed here and then I get the error about it being non resolvable with no explanation ;(
>>>>>>
>>>>>> I've taken the liberty to attach my raw log file for the output in case you can spot anything out of the ordinary.
>>>>>>
>>>>>> Note, i've got rid of the object team feature problem so now i'm just trying to grok why it won't install this plugin ;(
>>>>>>
>>>>>> I also tried the trick about only enabling it conditionally in a profile but when I did that it never gets attempted to be installed (which surprises me)
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> * Resolved IUs: shows IUs after resolving all conflicts and duplicates
>>>>>>>
>>>>>>>
>>>>>>> For equinox
>>>>>>> * Resolved OSGi state: resolved OSGi state, i.e. RESOLVED lines you see
>>>>>>>
>>>>>>> --
>>>>>>> Regards,
>>>>>>> Igor
>>>>>>>
>>>>>>> On 11-11-28 10:32 AM, Max Rydahl Andersen wrote:
>>>>>>>>>>> Running the build with -X -Dtycho.debug.resolver=<artifactId> will
>>>>>>>>>>> provide detailed information about dependency resolution, starting with
>>>>>>>>>>> all installable units visible to the project.
>>>>>>>>>>
>>>>>>>>>> Okey, I'll try see what that will give me.
>>>>>>>>>>
>>>>>>>>>> I looked in the code and I couldn't find a place where tycho.debug.resolver was used for anything beyond a boolean flag.
>>>>>>>>>> Where is the artifactid taken into account ?
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> DebugUtils checks for project artifactId
>>>>>>>>>
>>>>>>>>> http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/tree/tycho-core/src/main/java/org/eclipse/tycho/core/osgitools/DebugUtils.java
>>>>>>>>
>>>>>>>>
>>>>>>>> Ah gothca!
>>>>>>>>
>>>>>>>> Thought you mean tycho.debug.resolver=<pluginid> so I had tycho.debug.resolver=org.eclipse.jdt.launching.macosx and saw no diff output.
>>>>>>>>
>>>>>>>> With tycho.debug.resolver=<my project artifactid> I get a lot of RESOLVED: lines - I assume that is what you referenced to?
>>>>>>>>
>>>>>>>> /max
>>>>>>>> http://about.me/maxandersen
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> tycho-user mailing list
>>>>>>>> tycho-user@xxxxxxxxxxx
>>>>>>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>>>>>> _______________________________________________
>>>>>>> tycho-user mailing list
>>>>>>> tycho-user@xxxxxxxxxxx
>>>>>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>>>>>
>>>>>> /max
>>>>>> http://about.me/maxandersen
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> tycho-user mailing list
>>>>>> tycho-user@xxxxxxxxxxx
>>>>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>>>> _______________________________________________
>>>>> tycho-user mailing list
>>>>> tycho-user@xxxxxxxxxxx
>>>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>>>
>>>> /max
>>>> http://about.me/maxandersen
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> tycho-user mailing list
>>>> tycho-user@xxxxxxxxxxx
>>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>> <multienv.zip>_______________________________________________
>>> tycho-user mailing list
>>> tycho-user@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>
>> /max
>> http://about.me/maxandersen
>>
>>
>>
>> _______________________________________________
>> tycho-user mailing list
>> tycho-user@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/tycho-user
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user
/max
http://about.me/maxandersen