is site.xml compulsory for eclipse update site? - eclipse

I have used eclipse Features And Bundles Publisher to create a p2 metadata folder. But failed add the same folder as local site as eclipse keep on complaining Unable to find the site.
I could find content.xml and artifacts.xml but site.xml NOT generated through publisher command. I doubt if I have to create a site.xml manually.
FYI I am using eclipse KeplerSR2.

The p2 publisher should create a structure like this. Depending on pack attributed the content and artifact repository files [content and artifact] might be jared.
<repo-root-dir>
features
featureA.jar
...
plugins
pluginA.jar
...
content[.xml|.jar]
artifacts[.xml|.jar]
You won't get and won't require an update site file.
Make sure to clean the location you use from the Eclipse -> Preferences -> Available Softwares Sites. Eclipse is caching the repo metadata.

Yes you must have site.xml for update site from update_site
To create an update site you must develop a site.xml file and build the site. PDE provides an editor and project for creating sites. A site will contain one or more features organized into categories.
See how to create site.xml

Related

How to use multiple alfresco AMP file in eclipse

I have created one Alfresco project in Eclipse. I want to use one uploader-plus AMP file in my newly created Alfresco project in Eclipse.
How can I achieve this?
can we use multiple amps in single alfresco project in eclipse or can we create single amp file by combining 2 different amp files???
Independently from the IDE you are using, it is possible to setup an All-In-One project to fetch and apply several extra amps before starting up (either from a local or a remote maven repo) :
Create a new amp (Optional)
Build a release for your amp (Optional)
Add dependency for your amp in your project (You may need to add a repository as well)
Add an overlay for your amp to either share or repo (depending on the nature of your amp)
Run and enjoy
To learn more about this process please check the official documentation here
UPDATE : In the case of uploader-plus amps, you need either to fetch projects from here and install them locally (using mvn clean install) or add reference in your pom to this maven repo :
https://oss.sonatype.org/content/repositories/releases/ but I can see only v1.2 is released there so you probably would want to stick to option 1 !

Download Plugins from p2 update site without using eclipse

I'd like to retrieve the content of an update site. I tried the general way ("Help -> Install New Software"), but unfortunately I can't download the content because of conflicting dependencies. Is it possible to download the content of that repository manually, so that I can work with the plugins myself?
You can create a local copy of a remote p2 repository with the p2 mirroring tool. You can call that tool
as Eclipse application,
as Ant task, or
as Maven goal.
To create a local mirror of an Eclipse update site you may want to try the B3 Aggregator, https://www.eclipse.org/b3/.
It comes with an Eclipse editor for specifying the features/bundles to mirror from which update sites.

Install multiple Eclipse plugins via update site

I want to create a bundled Eclipse update site for a single install of multiple plugins using the Eclipse Update Manager.
Our developers use the following common plugins for development, all of which I'd like bundled:
EGit - Git Team Provider
<url><update label="Eclipse EGit Update Site" url="http://download.eclipse.org/egit/updates"/></url>
Maven SCM Plugin
<url><update label="Maven Integration Extras" url="http://m2eclipse.sonatype.org/sites/m2e-extras/"/></url>
Maven SCM Handler for Subversive
<url><update label="objectledge.org m2e connectors" url="http://objectledge.github.com/maven-extensions/connectors/updates/"/></url>
Maven Integration for Eclipse
http://download.eclipse.org/technology/m2e/releases/1.0/1.0.200.20111228-1245<url>
Subversive -SVN team Leader
<update url="http://download.eclipse.org/technology/subversive/1.0/update-site/" label="Subversive update site 1.0.x"/>
<discovery url="http://download.eclipse.org/technology/subversive/1.0/update-site/" label="Subversive update site 1.0.x"/></url>
Subversive SVN Connectors
<url><update label="Subversive connectors update site 2.3.x" url="http://community.polarion.com/projects/subversive/download/eclipse/3.0/update-site/"/>
SVN Kit 1.3.7
<discovery label="Subversive connectors update site 2.3.x" url="http://community.polarion.com/projects/subversive/download/eclipse/3.0/update-site/"/>
</url>
Alternative 1: Composite repositories
With a composite repository you have basically a "super" update site, pointing to all the other update sites. You only need to take the 2 files from the Eclipse help and add all your update site locations as child location at the bottom.
Drawback: When you go to this update site, you can install all the plugins from all the sites, not only the ones you wanted.
Alternative 2: Update site mirroring
With the deprecated update command line manager application in Eclipse you can mirror single features from remote update sites to a local update site. I've not yet found that ability in the new P2 director application.
Benefit: That way your developers really only get the features you want.
Drawback: You need to do some more scripting.
Alternative 3: Manually import the listed features in one step (click "Install/Update" link afterwards)
If you have installed those features on one machine, you can use File -> Export -> Installation -> From existing installation to create a small text file containing those features and their update sites. Your other developers can import those using File -> Import -> Installation -> Install software items from file.
Benefit: No scripting, no update site hosting necessary. You can manage that export file in a version control system easily.
Drawback: Not started from update manager UI (but uses the same underlying P2 techniques).

Eclipse: Include required features to update site

I am developing an Eclipse plug-in that requires a third-party plug-in such as the AJDT (AspectJ Development Tools) plug-in.
When a user wants to install my plug-in from the update site and does not have AJDT installed or enabled in his list of available update sites the installation will fail.
I created a file associateSites.xml next to the site.xml and included the reference in site.xml: tag:
<site
associateSitesURL="associateSites.xml">
The content of associateSites.xml looks like this:
<associateSites>
<associateSite url="..."/>
</associateSites>
This does not seem to have the wanted effect. Is there any other way to do so?
Using associateSitesURL seems to be deprecated.
This can help:
Include an external update site in my update site in Eclipse
together with
Feature Export Wizard
You have to add the
<repository-reference location=...>
tag in the category.xml and export the features as described in Feature Export Wizard, checking the option "Categorize repository".
Try making the associateSitesURL an absolute URL (eg, http://www.yourdomain.com/updates/associateSites.xml)

Create eclipse P2 update site from folder containing bundles?

Typically an eclipse p2 update site is created inside eclipse through the process of creating a feature project containing one or more plugins/bundles and adding this feature to an eclipse update site project. Finally the update site is build and can be referenced through the update manager in eclipse.
But is it possible to create a p2 update site outside eclipse from a folder only containing a set of already build plugins?
I have looked at:
http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/p2_publisher.html
but it assumes that both the bundles AND features are already created.
I have also looked at:
http://wiki.eclipse.org/Equinox_p2_director_application
http://wiki.eclipse.org/Equinox_p2_Getting_Started_for_Releng
but that does not describe how to create a p2 site from a list of bundles.
To simplify my question:
Is it possible to create a full working p2 update site from a local folder containing osgi bundles?
Publisher is the one to generate the p2 repository from bundles.
Update:
If you want to let your product showing in p2 UI, you can create p2.inf in your top feature,
properties.1.name=org.eclipse.equinox.p2.type.group
properties.1.value=true
Of course, you also could add it to a category via p2 advice file.