|
Re: JUnit 3.8.2 [message #544927 is a reply to message #544898] |
Tue, 06 July 2010 06:13 |
|
On 07/06/2010 01:04 AM, Miles Parker wrote:
> I'm trying to build a P2 site for an SDK based feature-based product
> build. That has a JDT dependency which naturally has a JUnit 3.8.2
> build. However, Buckminster isn't adding it in -- just the 4.x bundle. I
> get this:
>
>
> !MESSAGE Missing requirement: Eclipse Java Development Tools
> 3.6.0.v20100526-0800-7z8XFUJFMTfCWGoVuHImpms9H155
> (org.eclipse.jdt.feature.group
> 3.6.0.v20100526-0800-7z8XFUJFMTfCWGoVuHImpms9H155) requires 'org.junit
> [3.8.2.v3_8_2_v20100427-1100]' but it could not be found
>
>
> Is it sensible to use Buckminster for an SDK based build like this?
It should work. I'm curious why Buckminster isn't adding the dependency. Where is this dependency expressed? Is it optional?
- thomas
|
|
|
|
|
Re: JUnit 3.8.2 [message #545173 is a reply to message #545162] |
Tue, 06 July 2010 21:55 |
|
On 07/06/2010 10:22 PM, Miles Parker wrote:
> Thomas Hallgren wrote on Tue, 06 July 2010 02:13
>> It should work. I'm curious why Buckminster isn't adding the
>> dependency. Where is this dependency expressed? Is it optional?
>>
>> - thomas
>
>
> Nope, it's in included in org.eclipse.jdt feature.xml, the version is
> explicit (i.e. version="3.6.0.v20100602-1600"). I also have feature
> dependencies on it. I've tried it both with including it in my own
> features (with an explicit version) and not. 4.8.1 does come in. My
> target platform includes it.
>
That doesn't sound good. Can you create a reproducible example in a bugzilla? I'm on vacation right now but I could have
a look once I get back (on July 15).
> I'm able to invoke site.p2 and then install the product manually from a
> downloaded IDE with site.p2.
> But I get the error when I try to get it manually from director. i.e.:
> ./director -consolelog -r
> file://Volumes/Resources/Developer/builds/ampsite/amp/org.ec lipse.amp.all.site_1.0.0-eclipse.feature/site.p2
> -d test -i org.eclipse.amp.ide.product
>
> It does seem like there is a missing step here somewhere. How is
> Buckminster discovering the appropriate target platform? Is it using the
> platform from my IDE?
>
No, not unless that's the active target platform. Buckminster uses the target platform that is used for the normal
workspace build.
> Also it is not clear to me if for additional pieces that are pulled from
> other websites..should those be in the target platform or defined
> somewhere else?
>
You can start with an empty target platform and have Buckminster populate both that and the workspace with one single
import. This is what our (Buckminsters) own build does. We create an empty target platform consisting of one directory
container. We set that as the active target platform and then we call the "import" command. The defaults ensures that
all binary material ends up in the target platform and all source ends up in the workspace.
Another way is to use a PDE target platform definition and first populate the target platform using that and then use an
import command to populate the workspace. My preference is to use one single import but I know that there are many that
want a more direct control over the TP.
- thomas
|
|
|
Re: JUnit 3.8.2, target platforms [message #545177 is a reply to message #545173] |
Tue, 06 July 2010 23:23 |
Miles Parker Messages: 1341 Registered: July 2009 |
Senior Member |
|
|
thomas, please see below..
Thomas Hallgren wrote on Tue, 06 July 2010 17:55 | On 07/06/2010 10:22 PM, Miles Parker wrote:
> Nope, it's in included in org.eclipse.jdt feature.xml, the version is
> explicit (i.e. version="3.6.0.v20100602-1600"). I also have feature
> dependencies on it. I've tried it both with including it in my own
> features (with an explicit version) and not. 4.8.1 does come in. My
> target platform includes it.
>
That doesn't sound good. Can you create a reproducible example in a bugzilla? I'm on vacation right now but I could have
a look once I get back (on July 15).
|
Sure -- hopefully I'll figure it out before then. Note that the issue with org.apache.loggings feels uncomfortably familiar. PDE build doesn't seem to do well with multiple dependencies to the same versions drawn from different sources which is why for this very common stuff people use Imported-Packages rather than Required-Bundle.
Quote: | s it using the
> platform from my IDE?
>
No, not unless that's the active target platform. Buckminster uses the target platform that is used for the normal
workspace build.
|
Sorry, that's what I mean -- the target platform I've specified in my IDE. I'm assuming that I want to have the delta pack in there. I am able to do a working manual product build using that target platform.
Quote: | > Also it is not clear to me if for additional pieces that are pulled from
> other websites..should those be in the target platform or defined
> somewhere else?
>
You can start with an empty target platform and have Buckminster populate both that and the workspace with one single
import. This is what our (Buckminsters) own build does. We create an empty target platform consisting of one directory
container. We set that as the active target platform and then we call the "import" command. The defaults ensures that
all binary material ends up in the target platform and all source ends up in the workspace.
Another way is to use a PDE target platform definition and first populate the target platform using that and then use an
import command to populate the workspace. My preference is to use one single import but I know that there are many that
want a more direct control over the TP.
|
OK, I know it probably seems straightforward, but it would be really helpful to have a simple example of this perhaps in the mail app. The Building a Target Platform section in http://wiki.eclipse.org/Building_an_RCP_application_with_hud son_(Buckminster) was really opaque to me..it sounded like I needed to hand edit a bunch of xml files just to get platform, executable and p2 for rcpp2.
Looking at Ralf's example it seems like ti should be possible to just create a target platform using the Eclipse IDE preferences, save it and then invoke it from command-line by doing:
importtargetdefinition -A 'path/to/my.project/sdk.target'
(And once you get that right stick it into your build settings.)
Am I getting that right?
thanks and I should let you get back to your vacation,
Miles
|
|
|
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.02650 seconds