Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Buckminster » SVN readerType, headless, No component found(newbie)
SVN readerType, headless, No component found [message #954360] Tue, 23 October 2012 00:43 Go to next message
Andrea Richiardi is currently offline Andrea Richiardi
Messages: 42
Registered: August 2012
Member
Hello Eclipse forum, I am quickly going to describe what I want to achieve:
I have an Eclipse product that I want to customize adding basically plugins. The developer usually has the target platform and just adds his/her plugin(s) in the plugin folder of this product after having implemented them and tested on his/her local environment. What I would like to do is to automate the building with Cruise Control and Buckminster (headless) on a separate machine and have there non-regression tests.

From "The definitive guide to Buckminster" I understood that I can have a release site which basically include the plugin(s) that I am developing in its feature.xml.

Now, I created a Releng feature which points to another feature (my product placeholder), which in turn points (through feature.xml) to the plugin(s).

This is the structure:

releng - feature.xml
product - feature.xml
plugin - plugin.xml

Note that the product doesn't actually contain a .product.

The plugin is contained in a SVN. I am trying to materialize the plugin in the workspace to see if I got the rmap/cquery right, but when I call either from the PDE or headless Buckminster, I get that dreaded "No component found".

My repo looks like this:
Fttps://svn.repo.com/MyProject/trunk/My_Project

If my rmap points directly to the last My_Project folder, Buckminster complains with "No component found", if I point to the trunk folder, Buckminster complains with "No cspec found". The version in the product feature is 0.0.0, while the plugin has its own version.

I really don't understand why the component is not found. Maybe because it's not a jar? The fact is that I don't have a jar yet, because it is what I want to dynamically build from the source... Confused

Do you guys have some advice, what can I try to change?

Thank you very much!! Rolling Eyes



Laughing

[Updated on: Tue, 23 October 2012 00:45]

Report message to a moderator

Re: SVN readerType, headless, No component found [message #955236 is a reply to message #954360] Tue, 23 October 2012 16:23 Go to previous messageGo to next message
Henrik Lindberg is currently offline Henrik Lindberg
Messages: 2500
Registered: July 2009
Senior Member
Can you post your RMAP?

- henrik

On 2012-23-10 2:43, Andrea Richiardi wrote:
> Hello Eclipse forum, I am quickly going to describe what I want to achieve:
> I have an Eclipse product that I want to customize adding basically
> plugins. The developer usually has the target platform and just adds
> his/her plugin(s) in the plugin folder of this product after having
> implemented them and tested on his/her local environment. What I would
> like to do is to automate the building with Cruise Control and
> Buckminster (headless) on a separate machine and have there
> non-regression tests.
>
> From "The definitive guide to Buckminster" I understood that I can have
> a release site which basically include the plugin(s) that I am
> developing in its feature.xml.
>
> Now, I created a Releng feature which points to another feature (my
> product placeholder), which in turn points (through feature.xml) to the
> plugin(s).
>
> This is the structure:
>
> releng - feature.xml
> product - feature.xml
> plugin - plugin.xml
>
> Note that the product doesn't actually contain a .product.
>
> The plugin is contained in a SVN. I am trying to materialize the plugin
> in the workspace to see if I got the rmap/cquery right, but when I call
> either from the PDE or headless Buckminster, I get that dreaded "No
> component found".
>
> My repo looks like this:
> h**ps://svn.repo.com/MyProject/trunk/My_Project
>
> If my rmap points directly to the last My_Project folder, Buckminster
> complains with "No component found", if I point to the trunk folder,
> Buckminster complains with "No cspec found". The version in the product
> feature is 0.0.0, while the plugin has its own version.
>
> I really don't understand why the component is not found. Maybe because
> it's not a jar? The fact is that I don't have a jar yet, because it is
> what I want to dynamically build from the source... :?
> Do you guys have some advice, what can I try to change?
>
> Thank you very much!! :roll:
>
>
> :lol:
Re: SVN readerType, headless, No component found [message #956400 is a reply to message #954360] Wed, 24 October 2012 13:29 Go to previous messageGo to next message
Andrea Richiardi is currently offline Andrea Richiardi
Messages: 42
Registered: August 2012
Member
Sure, the plugin folder with the source code (and plugin.xml) is after {5}.


<?xml version="1.0" encoding="UTF-8"?>
<rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0" xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0">
  <rm:property key="use.build" value="RBUILD"/>
  <rm:property key="svn.username" value="user"/>
  <rm:property key="svn.password" value="psw"/>
  <rm:property key="svn.repo.proto" value="https"/>
  <rm:property key="svn.repo.url" value="server.com"/>
  <rm:property key="svn.repo.name" value="svn"/>
  <rm:property key="svn.repo.proj" value="project"/>
  <rm:property key="local.dir" value="test"/>
  <rm:property key="local.platform.dir" value="platform"/>
  
  <rm:locator searchPathRef="com.company.svn" pattern="^com\.company\.ui\..+"/>
    
  <rm:searchPath name="com.company.svn">
    <rm:provider componentTypes="osgi.bundle,eclipse.feature" readerType="svn" mutable="true" source="false">
      <rm:uri format="{0}://{1}:{2}@{3}/{4}/trunk/{5}">
        <bc:propertyRef key="svn.repo.proto"/>
	<bc:propertyRef key="svn.username"/>
	<bc:propertyRef key="svn.password"/>
	<bc:propertyRef key="svn.repo.url"/>
	<bc:propertyRef key="svn.repo.name"/>
	<bc:propertyRef key="svn.repo.proj"/>
      </rm:uri>
    </rm:provider>
  </rm:searchPath>
</rm:rmap>
Re: SVN readerType, headless, No component found [message #957432 is a reply to message #956400] Thu, 25 October 2012 08:11 Go to previous messageGo to next message
Henrik Lindberg is currently offline Henrik Lindberg
Messages: 2500
Registered: July 2009
Senior Member
ok, so you are looking for components in source form that are bundles or
features. Buckminster will then look for the Eclipse metadata (META-INF,
feature.xml, plugin.xml, etc) - see the bucky book for the the details
per type. Buckminster also looks for a cspex in these cases (containing
additions/modifications to the discovered metadata).

A cspec is used by a buckminster type of component (i.e. when there is
no other metadata to get the component description from).

I wonder why you have source = false - isn't this source you want to build?

Regards
- henrik

On 2012-24-10 15:29, Andrea Richiardi wrote:
> Sure, the plugin folder with the source code (and plugin.xml) is after {5}.
>
>
> <?xml version="1.0" encoding="UTF-8"?>
> <rm:rmap xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
> xmlns:rm="http://www.eclipse.org/buckminster/RMap-1.0">
> <rm:property key="use.build" value="RBUILD"/>
> <rm:property key="svn.username" value="user"/>
> <rm:property key="svn.password" value="psw"/>
> <rm:property key="svn.repo.proto" value="https"/>
> <rm:property key="svn.repo.url" value="server.com"/>
> <rm:property key="svn.repo.name" value="svn"/>
> <rm:property key="svn.repo.proj" value="project"/>
> <rm:property key="local.dir" value="test"/>
> <rm:property key="local.platform.dir" value="platform"/>
>
> <rm:locator searchPathRef="com.company.svn"
> pattern="^com\.company\.ui\..+"/>
> <rm:searchPath name="com.company.svn">
> <rm:provider componentTypes="osgi.bundle,eclipse.feature"
> readerType="svn" mutable="true" source="false">
> <rm:uri format="{0}://{1}:{2}@{3}/{4}/trunk/{5}">
> <bc:propertyRef key="svn.repo.proto"/>
> <bc:propertyRef key="svn.username"/>
> <bc:propertyRef key="svn.password"/>
> <bc:propertyRef key="svn.repo.url"/>
> <bc:propertyRef key="svn.repo.name"/>
> <bc:propertyRef key="svn.repo.proj"/>
> </rm:uri>
> </rm:provider>
> </rm:searchPath>
> </rm:rmap>
Re: SVN readerType, headless, No component found [message #957802 is a reply to message #954360] Thu, 25 October 2012 13:59 Go to previous messageGo to next message
Andrea Richiardi is currently offline Andrea Richiardi
Messages: 42
Registered: August 2012
Member
Damn!!!

Source is false, I haven't noticed that....

That is probably why it's not able to get it.
I will try again and tell you the result.
But I think this is the problem indeed.
Re: SVN readerType, headless, No component found [message #966242 is a reply to message #957802] Wed, 31 October 2012 21:42 Go to previous messageGo to next message
Andrea Richiardi is currently offline Andrea Richiardi
Messages: 42
Registered: August 2012
Member
It worked! I was able to read from the svn!

Reading remote file https://.../META-INF/MANIFEST.MF#HEAD
com.myplugin.ui:osgi.bundle: Found match 1.0.0.qualifier:#14
com.myplugin.ui:osgi.bundle: Using provider svn({0}://{1}:{2}@{3}/{4}/trunk/{5}[...])
Reading remote file https://.../plugin.xml#14
Reading remote file https://.../build.properties#14
Reading remote file https://.../.classpath#14

Now, if I am not wrong, if the plugin requires dependencies (read from the MANIFEST.MF) buckminster will look into the other places provided with the rmap, right?
The query specifies useTargetPlatform="false" because I don't want to use the current (buckminster) target platform, but take the copy of the custom target platform I
created using this website. Even if the final steps are a little bit blurry.

Sorry about all these questions but I am really new to Buckminster...
...and of course, thank you very much!

[Updated on: Wed, 31 October 2012 21:53]

Report message to a moderator

Re: SVN readerType, headless, No component found [message #967160 is a reply to message #966242] Thu, 01 November 2012 14:41 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3229
Registered: July 2009
Senior Member
On 2012-10-31 22:42, Andrea Richiardi wrote:
> Now, if I am not wrong, if the plugin requires dependencies (read from
> the MANIFEST.MF) buckminster will look into the other places provided
> with the rmap, right?

Yes.

> The query specifies useTargetPlatform="false" because I don't want to
> use the current (buckminster) target platform, but take the copy of the
> custom target platform I
> created using
>
https://nirmalsasidharan.wordpress.com/2010/10/09/provisioning-your-target-platform-as-local-p2-site/
> website. Even if the final steps are a little bit blurry.
>
Setting useTargetPlatform="true" will cause Buckminster to use the
currently active target platform. I think it would be better for you to
retain that setting and instead ensure that the target platform that
you've created is the one that is active. You can do this using the PDE
preferences in the IDE or from the command line with "buckminster
addtargetplatform"

Regards,
Thomas Hallgren
Re: SVN readerType, headless, No component found [message #968808 is a reply to message #967160] Fri, 02 November 2012 19:29 Go to previous message
Andrea Richiardi is currently offline Andrea Richiardi
Messages: 42
Registered: August 2012
Member
Ok thanks!

The fact is that I want to be able to have different "version" of the target platform as well. That why I was thinking of keeping them in another repository.

The problem is that the target platform is usually bigger and I don't want to materialize all the plugins. Just the one that are needed by the plugin.

Do you think I can achieve this?

[Updated on: Fri, 02 November 2012 19:31]

Report message to a moderator

Previous Topic:Updating with P2 from PDE-built to Buckminster-built product
Next Topic:Again the dreaded "No updates found" for a Buckminster -built RCP product
Goto Forum:
  


Current Time: Thu Oct 23 08:57:35 GMT 2014

Powered by FUDForum. Page generated in 0.06556 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software