Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-user] Defining new execution environments for Java 8 SE compact profiles

Yes, I plan to provide the JavaSE/Embedded profile definitions for compact1 - compact3 in luna assuming I can get some agreement with OSGi Expert groups first on the definition of the osgi.ee names.

Tom



Inactive hide details for "Sievers, Jan" ---04/08/2014 10:35:14 AM---looks like right now the behaviour is fail-fast on unknown"Sievers, Jan" ---04/08/2014 10:35:14 AM---looks like right now the behaviour is fail-fast on unknown MANIFEST BREE. "unknown" means the equino

From: "Sievers, Jan" <jan.sievers@xxxxxxx>
To: Tycho user list <tycho-user@xxxxxxxxxxx>,
Date: 04/08/2014 10:35 AM
Subject: Re: [tycho-user] Defining new execution environments for Java 8 SE compact profiles
Sent by: tycho-user-bounces@xxxxxxxxxxx





looks like right now the behaviour is fail-fast on unknown MANIFEST BREE.
"unknown" means the equinox implementation we use in tycho does not list it in profile.list along with a corresponding <profile_name>.profile file.
We should probably relax this if overriden from pom.xml.
 
Do I get it right that eventually equinox will provide new profile definitions like 'JavaSE/Embedded-1.8'?
We rely on these e.g. for default compiler source/target level and for package access rules for the JDTcompiler.
 
Regards
Jan
 
 
 
 
 
From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-bounces@xxxxxxxxxxx] On Behalf Of Thomas Watson
Sent:
 Dienstag, 8. April 2014 15:42
To:
 Tycho user list
Subject:
 Re: [tycho-user] Defining new execution environments for Java 8 SE compact profiles
 

I tried using the jre.compilation.profile = "" build.properties value and the build still failed with the same error [1].  Does the jre.compilation.profile value also override the check against the BREE for known execution environments?

Tom

[1]
https://git.eclipse.org/r/#/c/24570/

Inactive hide details for Igor Fedorenko ---04/08/2014 01:26:55 AM---Thomas, Wiki [1] has more details, but in short, Tycho useIgor Fedorenko ---04/08/2014 01:26:55 AM---Thomas, Wiki [1] has more details, but in short, Tycho uses most restrictive EE

From:
Igor Fedorenko <igor@xxxxxxxxxxxxxx>
To:
tycho-user@xxxxxxxxxxx,
Date:
04/08/2014 01:26 AM
Subject:
Re: [tycho-user] Defining new execution environments for Java 8 SE compact profiles
Sent by:
tycho-user-bounces@xxxxxxxxxxx






Thomas,

Wiki [1] has more details, but in short, Tycho uses most restrictive EE
supported by the bundle by default, but it is possible to override this
either with build.properties or pom.xml configuration. List of known
profiles and their definitions comes from Equinox and it is possible to
introduce custom profiles too.

Looks like we'll need to update Tycho to support osgi.ee requirement. Do
you think you can open an enhancement request in bugzilla and provide
links to relevant OSGi specs there?


[1]
http://wiki.eclipse.org/Tycho/Execution_Environments

--
Regards,
Igor

On 2014-04-08, 0:41, Thomas Watson wrote:
> In an effort to support compact profiles in Java 8 I have been looking
> into defining a new execution environment JavaSE/Embedded in OSGi [1]
> that can be used to represent the different compact profiles.  But we
> are quickly running against an issue with our tycho base build for
> tolerating BREEs with values for "unknown" execution evnironments For
> example,
>
>   Bundle-RequiredExecutionEnvironement: JavaSE-1.5, JavaSE/Embedded-1.8
>
> This would indicate that the bundle can run on any VM that supports
> JavaSE-1.5 or the new JavaSE/Embedded-1.8 (which represents compact1
> profile).  But this generates the following error from our tycho build:
>
> [ERROR] Internal error:
> org.eclipse.tycho.core.osgitools.OsgiManifestParserException: Exception
> parsing OSGi MANIFEST
> /jobs/genie.eclipse.platform/rt.equinox.bundles-Gerrit/workspace/bundles/org.eclipse.equinox.console/META-INF/MANIFEST.MF:
> Unknown OSGi execution environment: 'JavaSE/Embedded-1.8' -> [Help 1]
> org.apache.maven.InternalErrorException: Internal error:
> org.eclipse.tycho.core.osgitools.OsgiManifestParserException: Exception
> parsing OSGi MANIFEST
> /jobs/genie.eclipse.platform/rt.equinox.bundles-Gerrit/workspace/bundles/org.eclipse.equinox.console/META-INF/MANIFEST.MF:
> Unknown OSGi execution environment: 'JavaSE/Embedded-1.8'
>
> The error message is helpful and informative, but I am wondering why
> tycho must know all listed EE values.  After all, the bundle can only be
> compiled against one execution environment during the build, right?
>   Which one would you pick if both were known?  I seem to remember there
> being some pom.xml magic I can use to force a particular execution
> environment to be used.  For each bundle that uses JavaSE/Embedded-1.8
> EE am I going to have to use such magic?  Or am I going to have to
> somehow inform tycho of this new execution environment?
>
> Tom
>
> P.S. For folks that wonder how bundles can specify requirements on
> compact2 or compact3 profiles this has to be done using an osgi.ee
> generic requirement which provides more flexibility for matching against
> attributes of the execution environment.  And if you did not know, the
> Bundle-ExecutionEnvironment is actually deprecated as of OSGi R4.3 in
> favor of using an osgi.ee requirement.
>
> [1] _https://bugs.eclipse.org/bugs/show_bug.cgi?id=432027_
>
> Tom
>
>
>
> _______________________________________________
> 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
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user

GIF image


Back to the top