Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [pde-dev] product definition problems

Product definitions are 'build time' artifacts, while target definitions are 'development time' artifacts. Think of target definitions as the pool of artifacts you 'can' use while developing.  Your target *must* contain all the things you need, but it might also contain a variety of other crap as well. For example, if you are building an EMF application, your target might have GEF in it, whether you use it or not. 

Now, in a perfect world, you would keep your target lean and mean, and only include exactly what you need, but managing that is often difficult.

Now product definitions define (among other things) the set of artifacts that make up your product.   You might develop 1 or more products against the same target, each with different configurations.

That's a little long winded, but essentially I'm saying 'yes, you need to include your dependencies in your product definition'.   Feature based products may make this easier for you. 

HTH
cheers,
ian

On Thu, Nov 18, 2010 at 7:26 AM, Aleksandr Kravets <kravets.dev@xxxxxxxxx> wrote:
Hello,

Hopefully this is the right mailing list to ask my question, if not, please advise of a better one.

I am trying to create product definition and not sure if I am creating it correctly. Product definition lives in a feature that has dependencies on the plugins that make up the product. In the dependencies section of product definition I include only the feature that it lives in. If I try to launch product like that it fails with this error:

!SESSION Thu Nov 18 10:20:52 EST 2010 ------------------------------------------
!ENTRY org.eclipse.equinox.launcher 4 0 2010-11-18 10:20:52.041
!MESSAGE Exception launching the Eclipse Platform:
!STACK
java.lang.ClassNotFoundException: org.eclipse.core.runtime.adaptor.EclipseStarter
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:546)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504)
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
at org.eclipse.equinox.launcher.Main.main(Main.java:1212)

So I started adding different features as dependencies, o.e.equinox.executable, o.e.platform and even o.e.jdt and o.e.gef. If add these, plus o.e.dtp and o.e.emf that my plugins depend on then product launches fine. But I think that this is wrong - why do I need to add any of these if I have target platform that defines all of these dependencies. I tried to read some articles about product definition but could not find anything other than simple rcp examples. Can someone please help me understand what am I doing wrong here?

thanks for your help,
Alex

_______________________________________________
pde-dev mailing list
pde-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/pde-dev




--
R. Ian Bull | EclipseSource Victoria | +1 250 477 7484
http://eclipsesource.com | http://twitter.com/eclipsesource

Back to the top