<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Radek's Tech Blog &#187; p2</title>
	<atom:link href="http://urbas.tk/index.php/tag/p2/feed/" rel="self" type="application/rss+xml" />
	<link>http://urbas.tk</link>
	<description>Radoslaw H. Urbas homepage / blog</description>
	<lastBuildDate>Tue, 01 Jun 2010 20:31:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Generating p2 meta data from command line</title>
		<link>http://urbas.tk/index.php/2010/06/01/generating-p2-meta-data-from-command-line/</link>
		<comments>http://urbas.tk/index.php/2010/06/01/generating-p2-meta-data-from-command-line/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 20:15:30 +0000</pubDate>
		<dc:creator>Radoslaw Urbas</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[FeaturesAndBundlesPublisher]]></category>
		<category><![CDATA[generating]]></category>
		<category><![CDATA[meta data]]></category>
		<category><![CDATA[p2]]></category>

		<guid isPermaLink="false">http://urbas.tk/?p=215</guid>
		<description><![CDATA[Many times when working with Eclipse RCP I had to generate ad-hoc updatesites (usually containing some 3rd party plug-ins). What I usually did to achieve this (with Eclipse IDE): create new feature project add plug-ins to the feature create new updatesite project add the feature to the updatesite (pre-p2 style &#8211; site.xml) export newly created updatesite [...]]]></description>
			<content:encoded><![CDATA[<p>Many times when working with Eclipse RCP I had to generate ad-hoc updatesites (usually containing some 3rd party plug-ins). What I usually did to achieve this (with Eclipse IDE):</p>
<ul>
<li>create new feature project</li>
<li>add plug-ins to the feature</li>
<li>create new updatesite project</li>
<li>add the feature to the updatesite (pre-p2 style &#8211; site.xml)</li>
<li>export newly created updatesite (letting Eclipse to deal with creating p2 meta data)</li>
</ul>
<p>Since I needed to automate this process I started researching on p2 capabilities and found out that it can be done from command line using FeatureAndBundlesPublisher application. Sample command line invocation to do it:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;">%ECLIPSE_EXE% -application org.eclipse.equinox.p2.publisher.FeaturesAndBundlesPublisher -metadataRepository file:/%P2_TARGET% -artifactRepository file:/%P2_TARGET% -source %P2_SRC% -compress -configs win32.win32.x86 -publishArtifacts</pre></div></div>

<p>Where:</p>
<ul>
<li>ECLIPSE_EXE &#8211; points to Eclipse executable;</li>
<li>P2_TARGET &#8211; path to an empty directory where p2 repository should be created;</li>
<li>P2_SRC &#8211; path to the directory with /plugins subdirectory and plug-ins to be published (jar files) inside;</li>
<li><em>-compress</em> parameter is optional. It compresses artifacts.xml and content.xml to jar (zip) files.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://urbas.tk/index.php/2010/06/01/generating-p2-meta-data-from-command-line/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>p2 and fragments</title>
		<link>http://urbas.tk/index.php/2009/05/18/p2-and-fragments/</link>
		<comments>http://urbas.tk/index.php/2009/05/18/p2-and-fragments/#comments</comments>
		<pubDate>Mon, 18 May 2009 20:58:30 +0000</pubDate>
		<dc:creator>Radoslaw Urbas</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[fragment provisioning]]></category>
		<category><![CDATA[p2]]></category>

		<guid isPermaLink="false">http://urbas.tk/?p=110</guid>
		<description><![CDATA[Recently I&#8217;m getting a bit confused about p2. There is an update site created with PDE headless build. There are IUs generated for each plug-in/fragment/feature. Everything looks great so far. Let&#8217;s assume: plug-in A and fragment B with a defined host plug-in A are sitting together on single update site. Plug-in A in reality cannot [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;m getting a bit confused about p2. There is an update site created with PDE headless build. There are IUs generated for each plug-in/fragment/feature. Everything looks great so far.</p>
<p>Let&#8217;s assume: plug-in A and fragment B with a defined host plug-in A are sitting together on single update site. Plug-in A in reality cannot run without appropriate version of fragment B (e.g. situation similar  to SWT).</p>
<p>My understanding of p2-power was that I wouldn&#8217;t need to create separate feature C aggregating A and B just to make fragment B be automatically installed when I request installation of plug-in A.</p>
<p>I spent some time on reviewing Eclipse Bugzilla and mailing lists. Interesting findings:</p>
<p><a title="http://wiki.eclipse.org/Equinox_p2_Meeting_2007#Fragments_optional_vs._requirement" href="http://wiki.eclipse.org/Equinox_p2_Meeting_2007#Fragments_optional_vs._requirement" target="_blank">http://wiki.eclipse.org/Equinox_p2_Meeting_2007#Fragments_optional_vs._requirement</a></p>
<p><a title="https://bugs.eclipse.org/bugs/show_bug.cgi?id=256430" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=256430" target="_blank">https://bugs.eclipse.org/bugs/show_bug.cgi?id=256430</a></p>
<p>Any suggestions about handling such &#8220;required&#8221; fragment scenario without getting rid of autogenerated p2 repository and hand crafting p2 metadata?</p>
]]></content:encoded>
			<wfw:commentRss>http://urbas.tk/index.php/2009/05/18/p2-and-fragments/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Eclipse DemoCamp is coming to town</title>
		<link>http://urbas.tk/index.php/2008/05/22/eclipse-democamp-is-coming-to-town/</link>
		<comments>http://urbas.tk/index.php/2008/05/22/eclipse-democamp-is-coming-to-town/#comments</comments>
		<pubDate>Thu, 22 May 2008 22:15:21 +0000</pubDate>
		<dc:creator>Radoslaw Urbas</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[democamp]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[ganymede]]></category>
		<category><![CDATA[p2]]></category>
		<category><![CDATA[rcp]]></category>

		<guid isPermaLink="false">http://urbas.tk/?p=30</guid>
		<description><![CDATA[It looks like Eclipse DemoCamp will come to Krakow sometime in June. The agenda is not available now, but I hope it will be interesting. There is a lot of exciting stuff coming with Eclipse 3.4 (I&#8217;m currently working with Eclipse 3.4 M7 platform and looking forward for final release that is coming in end [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://urbas.tk/wp-content/ganymede.png" alt="Eclipe 3.4 Ganymede" style="margin-right: 20px" align="left" /> It looks like Eclipse DemoCamp will come to Krakow sometime in June. The agenda is not available now, but I hope it will be interesting. There is a lot of exciting stuff coming with Eclipse 3.4 (I&#8217;m currently working with Eclipse 3.4 M7 platform and looking forward for final release that is coming in end of June).</p>
<p>Agenda, specific date and place should be announced <a href="http://wiki.eclipse.org/Eclipse_DemoCamps_2008_-_Ganymede_Edition/Krakow" target="_blank">here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://urbas.tk/index.php/2008/05/22/eclipse-democamp-is-coming-to-town/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
