Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 368582

Summary: fix virgo IDE build dependencies
Product: [RT] Virgo Reporter: Miles Parker <milesparker>
Component: toolingAssignee: Leo Dos Santos <leo.dos.santos>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: P3 CC: b.kapukaranov, eclipse, leo.dos.santos, mlippert, steffen.pingel
Version: unspecified   
Target Milestone: ---   
Hardware: Macintosh   
OS: Mac OS X   
Whiteboard:
Bug Depends on: 369864    
Bug Blocks: 368890    
Attachments:
Description Flags
Current Target
none
New target.
none
Working Target none

Description Miles Parker CLA 2012-01-13 14:45:05 EST
Currently, Virgo IDE appears to be building against an obsolete set of jars located in the git required-bundles directory. We need to be building against other current virgo builds.
Comment 1 Miles Parker CLA 2012-01-13 15:03:12 EST
Created attachment 209477 [details]
Current Target

Here's my current target platform for reference. The only thing that is not available from p2 sites is the bundlor. I'm downlaoding that manually from

http://www.eclipse.org/downloads/download.php?file=/virgo/milestone/BNDLR/1.1.0.M03/bundlor-1.1.0.M03.zip

as per: http://www.eclipse.org/virgo/download/milestones.php
Comment 2 Miles Parker CLA 2012-01-13 15:23:21 EST
Questions we'll want to find answers for:

1. Why is org.eclipse.virgo.bundlor-x.x.x.jar only available in a download, not form an update site?
2. Why do we have these required-bundle jars? Or maybe the "why" isn't important :), but if there is a problem with getting rid of it, please comment.
3. For utils and eventually bundlor, should we build against current hudson util build repos or perhaps a milestone?

See also bug 368580

(To be clear, this bug is not about spring ide dependencies (bug 341910) just the current ones to other virgo repos.)
Comment 3 Martin Lippert CLA 2012-01-17 06:49:41 EST
The "required-bundles" directory was created in the past to contain all the necessary dependencies that the Virgo IDE needs to build against and to have them on the resulting update site of the Virgo IDE. I would be very happy to get them removed and instead consume them from other repos and/or builds.

We should just keep in mind that the resulting update site for the Virgo IDE should contain everything the user need to install Virgo IDE into an existing Eclipse JEE IDE (so that he doesn't need to add additional repos to Eclipse in order to install Virgo IDE successfully from the update site).
Comment 4 Miles Parker CLA 2012-01-17 12:39:54 EST
OK, we need to talk about how all of the update sites are organized, because it doesn't make sense to self-provision stuff from other builds, and the Virgo update sites are really granular. Perhaps we should be looking at an aggregate site that contains all of the Virgo features.
Comment 5 Borislav Kapukaranov CLA 2012-01-17 13:15:29 EST
I noticed you are already using the M01 milestone update site in your target platform.
Just wanted to let you know it contains all Virgo features, although they are not all categorized, therefore not visible in the Eclipse Update Site viewer.

I'm not sure I understood the part where Virgo's update site is too granular - do you need a feature in it that requires all other features or you were referring to something else?
Comment 6 Miles Parker CLA 2012-01-17 14:16:25 EST
Created attachment 209641 [details]
New target.
Comment 7 Miles Parker CLA 2012-01-17 14:21:24 EST
(In reply to comment #5)
> I noticed you are already using the M01 milestone update site in your target
> platform.
> Just wanted to let you know it contains all Virgo features, although they are
> not all categorized, therefore not visible in the Eclipse Update Site viewer.

It doesn't, actually. Please see revised target. I could only get the build working by using the SPring Source IDE update site and by manually downloading and adding bundlor plugin. :( So this is one of the first things we need to get fixed.

> I'm not sure I understood the part where Virgo's update site is too granular -
> do you need a feature in it that requires all other features or you were
> referring to something else?

I didn't say that they were "too granular", I said they were "really granular". :) And actually I was thinking more about the builds. I'm not sure yet how those are aggregated up into the main update site, but for building and testing purposes, we are probably going to need access to more recent update sites.
Comment 8 Miles Parker CLA 2012-01-17 14:27:17 EST
(In reply to comment #7)
> (In reply to comment #5)
> > I noticed you are already using the M01 milestone update site in your target
> > platform.
> > Just wanted to let you know it contains all Virgo features, although they are
> > not all categorized, therefore not visible in the Eclipse Update Site viewer.
> 
> It doesn't, actually. Please see revised target. I could only get the build
> working by using the SPring Source IDE update site and by manually downloading
> and adding bundlor plugin. :( So this is one of the first things we need to get
> fixed.

To clarify, of course I will need the SPring IDE for the time being. Fixing that is my job. bug 341910. But the bundlor is an issue.
Comment 9 Miles Parker CLA 2012-02-08 14:15:00 EST
o.e.v.ide.feature has a couple of plugin dependencies that don't seem to be provisioned and that I can't find any other references to. Can we safely get rid of these, or are they used at runtime somewhere. Does anyone know?

   <plugin
         id="ch.qos.logback.slf4j"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>


   <plugin
         id="com.sun.syndication"
         download-size="0"
         install-size="0"
         version="0.0.0"
         unpack="false"/>
Comment 10 Miles Parker CLA 2012-03-07 23:15:47 EST
Finally resolved!
Comment 11 Miles Parker CLA 2012-03-09 20:51:13 EST
Created attachment 212419 [details]
Working Target

Here's a complete working target. The only thing that won't build here is the management remote, because it still has build time org.springsource dependencies.
Comment 12 Miles Parker CLA 2012-03-09 20:54:58 EST
Please note that you to uncheck "INclude Required Software" from one of the sites each time you open the target platform. That looks like a P2 issue. :( 

Can anyone tell me where in the Virgo update sites these are provisioned or discovered from? I just need an update site for them.

 org.springframework.osgi.util,
 org.springframework.jmx.export,
 org.springframework.jmx.export.annotation,
 org.springframework.jmx.export.assembler,
 org.springframework.jmx.export.naming,
Comment 13 Borislav Kapukaranov CLA 2012-03-13 05:15:39 EDT
> Can anyone tell me where in the Virgo update sites these are provisioned or
> discovered from? I just need an update site for them.
> 
>  org.springframework.osgi.util,
>  org.springframework.jmx.export,
>  org.springframework.jmx.export.annotation,
>  org.springframework.jmx.export.assembler,
>  org.springframework.jmx.export.naming,

Are you sure these are present in a Virgo update site?
I can't find them anywhere and it seems none of the distributions use them.
Comment 14 Leo Dos Santos CLA 2012-03-14 13:28:42 EDT
The JMX packages should come from the org.springframework.context bundle. We don't need these at build time or install time because the jar that uses them is pre-packaged, but it is a dev-time dependency. If the context and osgi bundles are not on an update site, we should be able to copy them from a Virgo runtime into our target.