RCP, eRCP, and OSGi best practices [message #106079] |
Tue, 11 March 2008 01:15 |
Eclipse User |
|
|
|
Originally posted by: jconlon.apache.org
Cut my teeth on OSGi with Felix before I was seduced into porting my GUI
to an Eclipse RCP Product. I love the tooling, but Now I will be moving
parts of it to eRCP and there is even a requirement to run some of our
bundles in a headless Equinox runtime.
So I need to start moving back towards an OSGi orientation without going
to far out on my own (ironically to be more standard). Are there any
guidelines published for us Eclipse product authors that need to start
moving our code so that it will run in more standard and diverse
Eclipse/Equinox/OSGi runtimes?
Specifically:
For starters, I need to create more generic bundles. Are there any tips
for breaking the required bundle habit? (For example, when creating a
simple bundle in an Eclipse Plugin, how can I just import
org.osgi.framework instead of using required bundle to get the framework?)
There are some wrapped bundles I am using that require log4j. What is
the best practice for logging within a hybrid set of bundles that maybe
used for Eclipse RCP products, eRCP mobile apps and Equinox headless
runtimes? Is the OSGi LogService a viable choice for these environments?
thanks for any suggestions,
John
|
|
|
|
Re: RCP, eRCP, and OSGi best practices [message #106138 is a reply to message #106110] |
Tue, 11 March 2008 14:55 |
Eclipse User |
|
|
|
Originally posted by: jconlon.apache.org
Hi Ron,
The Quickfix addition to 3.4 is nice, but it doesn't appear to give me
anything I can't already do manually. I already export my packages and
use imports when I can with the current 3.3.
The most simple question in regard to creating cleaner bundles:
Is there a way when building an RCP application in the Eclipse PDE to
import the package org.osgi.framework so I can build a simple bundle
with out resorting to require bundle?
kind regards,
John
Ron Bermejo wrote:
> John E. Conlon wrote:
>
>> Specifically:
>
>> For starters, I need to create more generic bundles. Are there any
>> tips for breaking the required bundle habit? (For example, when
>> creating a simple bundle in an Eclipse Plugin, how can I just import
>> org.osgi.framework instead of using required bundle to get the
>> framework?)
>
> Hi,
>
> As of 3.4M2 PDE introduced some neat Quickfixes to help in this regard.
> http://download.eclipse.org/eclipse/downloads/drops/S-3.4M2- 200709210919/eclipse-news-M2.html
>
>
> Another possible solution for this would be to use the bnd tool:
> http://www.aqute.biz/Code/Bnd
>
> Hth!
> Ron
>
|
|
|
Re: RCP, eRCP, and OSGi best practices [message #106194 is a reply to message #106138] |
Wed, 12 March 2008 06:47 |
|
John E. Conlon schrieb:
> Is there a way when building an RCP application in the Eclipse PDE to
> import the package org.osgi.framework so I can build a simple bundle
> with out resorting to require bundle?
If you look at the "Plug-in Project" wizard there is a group "Target
Platform". If you select "an OSGi framework" it will use Import-Package
instead of Require-Bundle when creating the plug-in.
After that I recommend using "Automated Management of Dependencies"
together with Import-Package (can be found on the Dependencies tab of
the Manifest editor).
-Gunnar
--
Gunnar Wagenknecht
gunnar@wagenknecht.org
http://wagenknecht.org/
|
|
|
Re: RCP, eRCP, and OSGi best practices [message #106278 is a reply to message #106194] |
Thu, 13 March 2008 01:33 |
Eclipse User |
|
|
|
Originally posted by: jconlon.apache.org
Hi Gunnar,
see inline...
Gunnar Wagenknecht wrote:
> John E. Conlon schrieb:
>> Is there a way when building an RCP application in the Eclipse PDE to
>> import the package org.osgi.framework so I can build a simple bundle
>> with out resorting to require bundle?
>
> If you look at the "Plug-in Project" wizard there is a group "Target
> Platform". If you select "an OSGi framework" it will use Import-Package
> instead of Require-Bundle when creating the plug-in.
Yep that did the trick on the importing of the framework. I've seen
that option but always considered it for only building bundles for the
Equinox framework. Looks like I can use it within my RCP products as
well when I want to create basic bundles. Can it be used for build full
fledged RCP bundles that extend workbench for views and editors etc.?
>
> After that I recommend using "Automated Management of Dependencies"
> together with Import-Package (can be found on the Dependencies tab of
> the Manifest editor).
>
> -Gunnar
>
This too I've seen but have not used. Can I use it to convert from
Require-Bundle to import and have it convert my manifests?
thanks for pointing me in the right direction,
John
|
|
|
Re: RCP, eRCP, and OSGi best practices [message #106385 is a reply to message #106278] |
Sat, 15 March 2008 05:04 |
|
John E. Conlon schrieb:
> Can it be used for build full
> fledged RCP bundles that extend workbench for views and editors etc.?
Yes. From Eclipse side a plug-in is just a bundle. The only problem I
run into (with 3.3) is that PDE does not offer you all extension points
if you use Import-Package instead of Require-Bundle. However, that's
just a tooling problem and does not affect runtime.
>> After that I recommend using "Automated Management of Dependencies"
>> together with Import-Package (can be found on the Dependencies tab of
>> the Manifest editor).
> This too I've seen but have not used. Can I use it to convert from
> Require-Bundle to import and have it convert my manifests?
Let's say it that way ... it helps with "Import-Package" if you don't
know which packages you need. You simple select the bundles to be added
to the classpath. Later on, you invoke the "Organize Manifest" action
and PDE adds all the necessary "Import-Package" entries for you.
-Gunnar
--
Gunnar Wagenknecht
gunnar@wagenknecht.org
http://wagenknecht.org/
|
|
|
Powered by
FUDForum. Page generated in 0.03022 seconds