Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cbi-dev] Invalid execution environment profile name ?J2SE-1.4

I'll have a look later this week.

Some background information. Tycho consults the configuration sources to
determine build target execution execution

1. <executionEnvironment> in pom.xml (or parent)
2. build.properties (don't remember exact property name)
3. bundle manifest Bundle-RequiredExecutionEnvironment
4. <executionEnvironmentDefault> in pom.xml (or parent)

So <executionEnvironmentDefault> only affects projects that do not have
any execution environment configuration. For p2 we most likely will need
to specify <executionEnvironment> J2SE-1.4 or J2SE-1.5 in parent pom and
then override it with other EE for bundles that need different
configuration.

Of course, it is possible to remove CDC-1.1/Foundation-1.1 from the list
of supported runtime environments, but that's not our call to make.

--
Regards,
Igor

On 12-08-27 2:57 PM, Thanh Ha wrote:
Looks like I spoke too soon. The build is failing now with the error
below regarding org.eclipse.equinox.security not being about to find
javax.crypto. I modified the p2 parent pom with the following:

<configuration>
<!--
              require at least J2SE-1.4 due to
org.eclipse.equinox.security dependency
              ``?'' syntax means individual project can override with
build.properties config
           -->
<executionEnvironmentDefault>J2SE-1.4</executionEnvironmentDefault>
</configuration>

I think the new executionEnvironmentDefault is not behaving the same way
the ? did in the past since setting J2SE-1.4 solved this issue in the
past. The commit log for the Tycho change that added this feature seems
to state that "Unlike with the '?' syntax, the
executionEnvironmentDefault parameter has no effect if there is a
Bundle-RequiredExecutionEnvironment header in the MANIFEST.MF of a
bundle project."

I had a look at org.eclipse.equinox.security's MANIFEST.MF and it
specifies the correct J2SE-1.4. While
org.eclipse.equinox.p2.artifact.optimizers specifies it's BREE as
J2SE-1.5, J2SE-1.4 and CDC-1.1/Foundation-1.1. I tried forcing J2SE-1.4
for this bundle in the pom but it didn't seem to resolve the issue. I'm
not sure what else to try at this point.


Thanh


On 08/27/2012 01:56 PM, Thanh Ha wrote:
Thanks Igor, this seems to have fixed it. I'll push this change today.

Thanh


On 08/27/2012 12:00 PM, Igor Fedorenko wrote:
Yes, this is a recent change in Tycho. You should be able to fix this
by replacing

<executionEnvironment>?J2SE-1.4</executionEnvironment>

with

<executionEnvironmentDefault>J2SE-1.4</executionEnvironmentDefault>


If this does not help, I'll have a closer look.


--
Regards,
Igor

[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed:
org.eclipse.equinox.p2.artifact.optimizers 1.0.0.qualifier
[ERROR]   Missing requirement: org.eclipse.equinox.security
1.1.100.qualifier requires 'package javax.crypto 0.0.0' but it could not
be found
[ERROR]   Cannot satisfy dependency:
org.eclipse.equinox.p2.artifact.optimizers 1.0.0.qualifier depends on:
package org.eclipse.equinox.p2.repository [2.0.0,3.0.0)
[ERROR]   Cannot satisfy dependency: org.eclipse.equinox.p2.repository
2.2.0.qualifier depends on: package org.eclipse.equinox.security.storage
0.0.0
[ERROR]
[ERROR] Internal error: java.lang.RuntimeException: "No solution found
because the problem is unsatisfiable.": ["Unable to satisfy dependency
from org.eclipse.equinox.security 1.1.100.qualifier to package
javax.crypto 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.crypto.spec 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.callback 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.login 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.spi 0.0.0.", "No solution found because the problem
is unsatisfiable."] -> [Help 1]
org.apache.maven.InternalErrorException: Internal error:
java.lang.RuntimeException: "No solution found because the problem is
unsatisfiable.": ["Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package javax.crypto
0.0.0.", "Unable to satisfy dependency from org.eclipse.equinox.security
1.1.100.qualifier to package javax.crypto.spec 0.0.0.", "Unable to
satisfy dependency from org.eclipse.equinox.security 1.1.100.qualifier
to package javax.security.auth 0.0.0.", "Unable to satisfy dependency
from org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.callback 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.login 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.spi 0.0.0.", "No solution found because the problem
is unsatisfiable."]
         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:168)
         at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
         at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
         at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
         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.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)

         at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
         at
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)

         at
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: java.lang.RuntimeException: "No solution found because the
problem is unsatisfiable.": ["Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package javax.crypto
0.0.0.", "Unable to satisfy dependency from org.eclipse.equinox.security
1.1.100.qualifier to package javax.crypto.spec 0.0.0.", "Unable to
satisfy dependency from org.eclipse.equinox.security 1.1.100.qualifier
to package javax.security.auth 0.0.0.", "Unable to satisfy dependency
from org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.callback 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.login 0.0.0.", "Unable to satisfy dependency from
org.eclipse.equinox.security 1.1.100.qualifier to package
javax.security.auth.spi 0.0.0.", "No solution found because the problem
is unsatisfiable."]
         at
org.eclipse.tycho.p2.resolver.AbstractResolutionStrategy.newResolutionException(AbstractResolutionStrategy.java:77)

         at
org.eclipse.tycho.p2.resolver.ProjectorResolutionStrategy.resolve(ProjectorResolutionStrategy.java:83)

         at
org.eclipse.tycho.p2.impl.resolver.P2ResolverImpl.resolveProject(P2ResolverImpl.java:123)

         at
org.eclipse.tycho.p2.impl.resolver.P2ResolverImpl.resolveProject(P2ResolverImpl.java:81)

         at
org.eclipse.tycho.p2.resolver.P2TargetPlatformResolver.doResolvePlatform(P2TargetPlatformResolver.java:379)

         at
org.eclipse.tycho.p2.resolver.P2TargetPlatformResolver.resolveDependencies(P2TargetPlatformResolver.java:356)

         at
org.eclipse.tycho.core.resolver.DefaultTychoDependencyResolver.resolveProject(DefaultTychoDependencyResolver.java:98)

         at
org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:82)

         at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:274)
         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
         ... 11 more
_______________________________________________
cbi-dev mailing list
cbi-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/cbi-dev


Back to the top