[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cross-project-issues-dev] Re: EMF usage in TPTP 4.4.0

Bjorn wrote on 01/06/2007 12:52:41 PM:

> TPTP PMC, (cc for FYI to Europa leads)
> While reading the TPTP PMC mailing list, I encountered this statement:

> I think Europa should declare the JRE level that's required to run
> it otherwise most of the components might not work (not sure if they
> can be installed either when Java 1.4 is used).

> One of the requirements for participation in Europa is #8 on the wiki list:
>     8. All plug-ins must correctly list their required JVM versions
> in the manifest/plugin.xml.
> As I understand it, plug-ins for JVM 5 will not load when a JVM 1.4
> is being used, as long as the manifests are correct. Thus the Europa
> distro will run on both JVM 5 and JVM 1.4 (although perhaps with
> reduced functionality on 1.4 because fewer plug-ins will load). Does
> this solve the issue or am I missing something?

Indeed a bundle declaring an Execution Environment that is not supported at runtime will not be resolved and will not run.  Having each bundle marked with its *minimum* required execution environment is an important part of communicating the usability of the bundle to consumers.  In a complex system however there is still a challenge in determining the "real" minimum.  For example, it is likely that the 3.3 Eclipse SDK will ship with a few plugins marked as requireing Java 5 and Java 6 whereas the vast majority of the rest of the plugins will be marked as Foundation 1.0 or J2SE 1.4.  Our intention is that the SDK work just fine on 1.4 but some of the additional function requiring Java 5 or 6 just not be available.  In this case the "reduced functionality" is likely quite understandable and acceptable to end users.

In the larger context of Europa, when some basic infrastructure piece like EMF (just to pick on Ed) says it needs Java 5, there may be a ripple on that causes whole swaths of plugins to no longer resolve or function.  We don't currently have any markup or other means of indicating the difference between these two cases.  So people need to look a little more deeply when considering these scenarios.