<?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>EclipseSource Blog &#187; pde</title>
	<atom:link href="http://eclipsesource.com/blogs/tag/pde/feed/" rel="self" type="application/rss+xml" />
	<link>http://eclipsesource.com/blogs</link>
	<description>Eclipse Equinox OSGi</description>
	<lastBuildDate>Wed, 08 Sep 2010 06:55:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Equinox/RAP WAR deployment: an end to the pain</title>
		<link>http://eclipsesource.com/blogs/2010/08/17/equinoxrap-war-deployment-an-end-to-the-pain/</link>
		<comments>http://eclipsesource.com/blogs/2010/08/17/equinoxrap-war-deployment-an-end-to-the-pain/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 07:20:08 +0000</pubDate>
		<dc:creator>Holger Staudacher</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[equinox]]></category>
		<category><![CDATA[indigo]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[pde]]></category>
		<category><![CDATA[rap]]></category>
		<category><![CDATA[soc]]></category>
		<category><![CDATA[war deployment]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=4581</guid>
		<description><![CDATA[A few weeks ago I presented you my GSoC 2010 project. The idea was to make Equinox/RAP WAR deployment easier. And yes, it was a real pain to create .war files for an Equinox/RAP application. About 215 deployment related threads on the RAP newsgroup speak for themselves. But the pain is over now, and I [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago I presented you <a title="WAR Products Wiki page" href="http://wiki.eclipse.org/RAP/Equinox_WAR_products">my GSoC 2010 project</a>. The idea was to make Equinox/RAP WAR deployment easier. And yes, it was a real pain to create .war files for an Equinox/RAP application. About 215 deployment related threads on the RAP newsgroup speak for themselves. But the pain is over now, and I think I can say,  &#8220;Mission accomplished&#8221;.</p>
<p>I want to introduce you to a new concept called WAR Products. They are similar to <a title="Eclipse Products" href="http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.pde.doc.user/concepts/product.htm">Eclipse Products</a> but much more lightweight. All you have to do to export a RAP application is to create a .warproduct based on a working launch configuration and press &#8216;export&#8217;. The exported .war file is ready to deploy. There is a function included that validates your .war file content before you&#8217;ve exported it. If you don&#8217;t believe me,  watch the <a title="WAR Products screencast" href="http://vimeo.com/13931789">screencast below</a> and see for yourself.</p>
<p style="text-align: center;"><iframe src="http://player.vimeo.com/video/13931789?portrait=0" width="600" height="375" frameborder="0"></iframe></p>
<p>You can use the tooling right now, but please keep in mind that we are still polishing. The final goal is to contribute it back to PDE, but there are still a <a title="Open WAR Product Bugs" href="https://bugs.eclipse.org/bugs/buglist.cgi?short_desc_type=allwordssubstr&amp;short_desc=%5BWAR+Product%5D&amp;product=RAP&amp;long_desc_type=allwordssubstr&amp;long_desc=&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;order=Importance">few things to do</a> before we make the contribution.  One of those items is to get your initial feedback so when you use the WAR Products tooling, please be sure submit your <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=RAP&amp;component=Help&amp;">feature requests or file bugs</a> and help us to continue to improve the tooling.</p>
<p>Here is what you need to do to use the WAR Products tooling:</p>
<ol>
<li>Install the tooling from this repository into your IDE: <a title="WAR Products repository" href="http://download.eclipsesource.com/~hstaudacher/warproducts/">http://download.eclipsesource.com/~hstaudacher/warproducts/</a></li>
<li>Set up your target. You need to <a href="http://download.eclipsesource.com/~hstaudacher/warproducts/requiredBundles.zip">download these bundles</a> and add them to your target installation. (Don&#8217;t forget to refresh the target afterwards.)</li>
</ol>
<p>Again, comments, bugs and feature requests are appreciated!</p>
<p>At this point I want to thank some people. First of all, Rüdiger Herrmann for great mentoring and the whole RAP team for all the nice evenings in the beer garden. Not to forget Simon Kaegi, Scott Lewis and Chris Aniszczyk and the rest of the Equinox and PDE teams for tuning up the Product concept. Your changes made things much easier.</p>
<p>And, I hope that you will find WAR deployment and creating WAR Products not just easier, but completely pain free!</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2010/08/17/equinoxrap-war-deployment-an-end-to-the-pain/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Revamping Eclipse Examples?</title>
		<link>http://eclipsesource.com/blogs/2010/04/14/revamping-eclipse-examples/</link>
		<comments>http://eclipsesource.com/blogs/2010/04/14/revamping-eclipse-examples/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 09:02:25 +0000</pubDate>
		<dc:creator>Benjamin Muskalla</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[consumers]]></category>
		<category><![CDATA[eclipseRT]]></category>
		<category><![CDATA[equinox]]></category>
		<category><![CDATA[examples]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[p2]]></category>
		<category><![CDATA[pde]]></category>
		<category><![CDATA[rap]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=3964</guid>
		<description><![CDATA[Even though I&#8217;ve been involved in the Eclipse community for around 5 years, I&#8217;m still amazed by the projects that are hosted under the Eclipse umbrella. As an &#8220;insider&#8221;, I have a pretty good overview of many projects and at least a rough picture of all the other cool stuff. While I love working with [...]]]></description>
			<content:encoded><![CDATA[<p>Even though I&#8217;ve been involved in the Eclipse community for around 5 years, I&#8217;m still amazed by the projects that are hosted under the Eclipse umbrella. As an &#8220;insider&#8221;, I have a pretty good overview of many projects and at least a rough picture of all the other cool stuff. While I love working with <a href="http://eclipse.org/rt/">EclipseRT</a> technologies like Equinox, RAP, EclipseLink, ECF or &lt;insert your project here&gt;, I always find myself in the same situation.  This stuff is awesome but do users really get the point of what&#8217;s possible? Learning a new technology is always hard, but if you want to develop enterprise-ready, scalable and vibrant platforms using Eclipse components, there are so many obstacles to overcome. You need to have at least a clue about OSGi/Equinox, Extensions and their corresponding Extension points (for each for your consumed modules) and many other things. I don&#8217;t want to say that Eclipse is too complicated (which is a topic for another post anyway), but what I would really like to see is a better way to get our future consumers up to speed. As <a href="http://en.wikipedia.org/wiki/Esther_Dyson">Esther Dyson</a> once said:</p>
<blockquote><p><em>A worker&#8217;s paradise is a consumer&#8217;s hell.</em></p></blockquote>
<p>With the <a href="http://www.eclipse.org/examples">Eclipse Examples</a> project we wanted to provide a few exemplary projects to show how to use different projects. In theory a nice idea, but practically I don&#8217;t see that this effort was very successful. Wayne and me discussed some ideas back in <a href="http://dev.eclipse.org/mhonarc/lists/examples-dev/msg00010.html">2008</a> but without a concrete outcome.  Thinking about this topic after EclipseCon, my current thought was to provide easy ways for our consumers to try out the bits and pieces of all the projects. What I constantly run into though, is that you need to do so many things  before you can get started, like setting up a target platform, making your examples depend on the right bundles, using the right extension points/services/etc, creating launch configurations. Many projects already helped themselves by providing examples using PDE <a href="http://help.eclipse.org/galileo/topic/org.eclipse.pde.doc.user/reference/extension-points/org_eclipse_pde_ui_templates.html">templates</a>. That&#8217;s the way I&#8217;d like to tell newcomers how to get started and would push this even a little further &#8211; the idea is to provide some infrastructure in the Examples project to help others setting up their examples. The projects just provide example bundles, maybe a target definition, a launch configuration and a cheatsheet or something. In the end, the user should be able to try out another Eclipse technology within 2 clicks: New Example &gt; That technology, run!</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2010/04/examples_wizard.png"><img class="alignnone size-full wp-image-3966" title="examples_wizard" src="http://eclipsesource.com/blogs/wp-content/uploads/2010/04/examples_wizard.png" alt="examples wizard Revamping Eclipse Examples?" width="525" height="500" /></a></p>
<p>Basically PDE already provides many of these things but it&#8217;s not yet at the point I would love to see it. It&#8217;s still too complex for consumers to create target platforms (I know what I&#8217;m talking about), create their launch configs and get started with the examples. While there are still <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=276000">some</a> <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=169340">hurdles</a> to jump, I think our users and consumers would thank us for getting them up to speed in seconds. It should even be interesting for non-OSGi related examples as other projects thought about <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=238144">something like this</a> for years. I don&#8217;t see a chance to have this ready for Helios, but I&#8217;m pretty confident that we could do something like this in the timeframe for the <a href="http://eclipsesource.com/blogs/2010/04/08/helios-1-name-vote-for-your-favorite/">I&#8230;</a> release train. Would other projects be interested in such an approach to distribute their examples? Please leave a comment on <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=309081">this bug</a> if you do so to collect ideas, wishes and requirements.</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2010/04/14/revamping-eclipse-examples/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>PDE Goodness: Project and Target Platform Templates</title>
		<link>http://eclipsesource.com/blogs/2009/12/12/pde-goodness-project-and-target-platform-templates/</link>
		<comments>http://eclipsesource.com/blogs/2009/12/12/pde-goodness-project-and-target-platform-templates/#comments</comments>
		<pubDate>Sat, 12 Dec 2009 01:22:44 +0000</pubDate>
		<dc:creator>Elias Volanakis</dc:creator>
				<category><![CDATA[syndicate]]></category>
		<category><![CDATA[pde]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=3617</guid>
		<description><![CDATA[A nice thing about Eclipse PDE is that it has mechanisms to make it very easy for developers to get started consuming your frameworks. Here are two of them. Target Platform Templates For runtime projects, such as Riena, RAP and Equinox, the first hurdle a developer faces is to set-up the appropriate target platform. A target [...]]]></description>
			<content:encoded><![CDATA[<p>A nice thing about Eclipse PDE is that it has mechanisms to make it very easy for developers to get started consuming your frameworks. Here are two of them.</p>
<p><strong>Target Platform Templates</strong></p>
<p>For runtime projects, such as <a href="http://www.eclipse.org/riena">Riena</a>, RAP and Equinox, the first hurdle a developer faces is to set-up the appropriate target platform. A <strong>target platform </strong>is the collection of bundles that are available during compilation. Obviously if you ship runtime components they must end up in there to be available for compilation.</p>
<p>You can make this much easier for others by contributing a target platform template to the &#8220;New Target Definition&#8221; wizard. A developer can then select an entry in the &#8220;Template&#8221; drop-down and will instantly receive a pre-configured target definition. Much easier and less error-prone that recreating the target definition manually from step-by-step instructions.</p>
<p>Since the target definition&#8217;s payload can be provisioned over http, the developer only has to click on &#8220;Set as Target Platform&#8221; and is done. For details refer to the <a href="http://help.eclipse.org/galileo/topic/org.eclipse.pde.doc.user/reference/extension-points/org_eclipse_pde_core_targets.html">org.eclipse.pde.core.targets extension point.</a></p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/pde_new_target.png"><img class="aligncenter size-full wp-image-3620" title="pde_new_target" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/pde_new_target.png" alt="pde new target PDE Goodness: Project and Target Platform Templates" width="525" height="696" /></a><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/target.png"><img class="aligncenter size-full wp-image-3621" title="target" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/target.png" alt="target PDE Goodness: Project and Target Platform Templates" width="703" height="375" /></a></p>
<p><strong>Project Templates</strong></p>
<p>Another way to help developers with their first steps is to provide a project template. This hooks into the last page of &#8220;New Plug-in Project&#8221; Wizard and pre-populates a new project with source code, binary content and appropriate plugin.xml and MANIFEST.MF files.</p>
<p>The templating mechanism has a lot of depth as you can manipulate data-models to dynamically craft the MANIFEST.MF and plugin.xml files. You can also define placeholder variables, such as $pluginId$ and use them in source templates. There are mechanisms to tie these variables to UI elements in the wizard pages. The developer documentation on the matter is somewhat superficial. At the moment your best bet is to check out and study the <strong>org.eclipse.pde.ui.templates</strong> project from the Eclipse CVS (/cvsroot/eclipse/pde/ui/org.eclipse.pde.ui.templates). It contains the templates that ship with the IDE and therefore plenty of examples. Complement this by reading the specification of the <a href="http://help.eclipse.org/galileo/topic/org.eclipse.pde.doc.user/reference/extension-points/org_eclipse_pde_ui_pluginContent.html">org.eclipse.pde.ui.pluginContent</a> extension point and this <a href="http://www.ibm.com/developerworks/opensource/library/os-eclipse-plugin-templates/index.html">introductory article</a> on developer works.</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/pde_templates.png"><img class="aligncenter size-full wp-image-3623" title="pde_templates" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/pde_templates.png" alt="pde templates PDE Goodness: Project and Target Platform Templates" width="525" height="608" /></a><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/riena_mail.png"><img class="aligncenter size-full wp-image-3624" title="riena_mail" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/riena_mail.png" alt="riena mail PDE Goodness: Project and Target Platform Templates" width="800" height="600" /></a></p>
<p><span style="color: #000000; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: #b5d5ff; background-position: initial initial;"><span><a style="text-decoration: none;" href="http://eclipsesource.com/blogs/wp-content/uploads/2009/12/target.png"><br />
</a></span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/12/12/pde-goodness-project-and-target-platform-templates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compile errors&#8230; I should have set my EE</title>
		<link>http://eclipsesource.com/blogs/2009/11/18/compile-errors-ee/</link>
		<comments>http://eclipsesource.com/blogs/2009/11/18/compile-errors-ee/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 18:40:53 +0000</pubDate>
		<dc:creator>Ian Bull</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[pde]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=3414</guid>
		<description><![CDATA[Lately I have been working on (and committing) a repository analyzer tool for p2.  It is meant to help you validate your repository against known problems and common mistakes (missing version numbers, two IUs with the same ID/Version, etc&#8230;).  After cleaning up the code I finally committed it.  Within a few minutes of committing it, [...]]]></description>
			<content:encoded><![CDATA[<p>Lately I have been working on (and committing) a repository analyzer tool for p2.  It is meant to help you validate your repository against known problems and common mistakes (missing version numbers, two IUs with the same ID/Version, etc&#8230;).  After cleaning up the code I finally committed it.  Within a few minutes of committing it, <a href="http://aniefer.blogspot.com/">Andrew</a> starting pinging me to let me know I introduced a compile error. (Thanks Andrew).</p>
<p>The offending lines where here:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-3415" title="ee1" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/11/ee1.png" alt="ee1 Compile errors... I should have set my EE" width="694" height="105" /></p>
<p>and more precisely:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-3416" title="ee2" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/11/ee2.png" alt="ee2 Compile errors... I should have set my EE" width="694" height="105" /></p>
<p>You see, while this may seem fine to all you Java 1.6 developers out there, p2 is set to run on CDC-1.1/Foundation-1.1 and JSE-1.4.  I know in the Java SE space, 1.4 is long past <strong>end of life,</strong> but in the embedded space, it is still very common.  (Remember, these embedded devices require much smaller VMs, otherwise we complain that our small devices are two slow /sluggish / expensive, etc&#8230;) &#8212; and p2 is a provisioning platform that operates just fine on embedded devices.</p>
<p>With Eclipse, you can set your <a href="http://wiki.eclipse.org/index.php/Execution_Environments">Execution Environment </a>(EE) and point to a variety of JDKs.  This allows you to &#8220;single source&#8221; your code so the same code can run on a server with Java 1.6 installed and a small device with a Foundation VM.  However, I don&#8217;t have a Foundation VM <img src='http://eclipsesource.com/blogs/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' title="Compile errors... I should have set my EE" /> .</p>
<p>Lucky for us, an EE description for several JDKs is available in the Eclipse CVS repository:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-3417" title="ee3" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/11/ee3.png" alt="ee3 Compile errors... I should have set my EE" width="416" height="543" /></p>
<p>Once you checkout the project, you can add this to your list of known JREs</p>
<p style="text-align: left;"><img class="aligncenter size-full wp-image-3418" title="ee4" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/11/ee4.png" alt="ee4 Compile errors... I should have set my EE" width="566" height="694" /><br />
Now I get all the Java tooling (content assist, compile errors, etc&#8230;) for the Foundation 1.1 VMs.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-3419" title="ee5" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/11/ee5.png" alt="ee5 Compile errors... I should have set my EE" width="717" height="101" /></p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/11/18/compile-errors-ee/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Picasso paints the web with RAP</title>
		<link>http://eclipsesource.com/blogs/2009/09/11/picasso-paints-the-web/</link>
		<comments>http://eclipsesource.com/blogs/2009/09/11/picasso-paints-the-web/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 12:30:21 +0000</pubDate>
		<dc:creator>Benjamin Muskalla</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[layout]]></category>
		<category><![CDATA[pde]]></category>
		<category><![CDATA[picasso]]></category>
		<category><![CDATA[rap]]></category>
		<category><![CDATA[Single Sourcing]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[ui]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=311</guid>
		<description><![CDATA[Whenever I&#8217;m working on UI stuff, something always goes terribly wrong Sometimes it&#8217;s only a margin or padding, other times it a composite that crosses my path. I was pretty happy that Chris Aniszczyk and Simon Archer hacked together Picasso, which helps you to identify some of these layout issues. As you may know, most [...]]]></description>
			<content:encoded><![CDATA[<p>Whenever I&#8217;m working on UI stuff, something always goes terribly wrong <img src='http://eclipsesource.com/blogs/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' title="Picasso paints the web with RAP" />  Sometimes it&#8217;s only a margin or padding, other times it a composite that crosses my path. I was pretty happy that Chris Aniszczyk and Simon Archer hacked together <a href="http://aniszczyk.org/2008/05/04/painting-the-workbench/">Picasso</a>, which helps you to identify some of these layout issues. As you may know, most of the time I work on the <a href="http://www.eclipse.org/rap">Rich Ajax Platform</a> (RAP) and come across the same issues. As <a href="http://wiki.eclipse.org/PDE/Incubator/Picasso">Picasso</a> was originally intended to work for RCP, it&#8217;s not a long way to get it working for RAP.</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/02/picasso_on_rap.png"><img class="alignnone size-medium wp-image-312" title="Picasso on RAP" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/02/picasso_on_rap-300x225.png" alt="Picasso on RAP" width="300" height="225" /></a></p>
<p>In case you&#8217;re struggling with these issues too &#8211;  and working on RAP applications, please add your vote to <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=267975">bug 267975</a> so we can use Picasso on both runtimes.</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/09/11/picasso-paints-the-web/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Eclipse, OSGi and PAX Runner</title>
		<link>http://eclipsesource.com/blogs/2009/08/14/eclipse-osgi-and-pax-runner/</link>
		<comments>http://eclipsesource.com/blogs/2009/08/14/eclipse-osgi-and-pax-runner/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 00:50:51 +0000</pubDate>
		<dc:creator>Chris Aniszczyk</dc:creator>
				<category><![CDATA[syndicate]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[pde]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=2677</guid>
		<description><![CDATA[If you&#8217;re using Eclipse for OSGi development, there&#8217;s a neat utility that you can use to help you run your OSGi application on a variety of frameworks. PAX Runner uses the PDE org.eclipse.pde.ui.osgiFrameworks extension point to supply frameworks. To install PAX Runner, simply add their repository via software installation wizard. There&#8217;s an important thing to [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re using Eclipse for OSGi development, there&#8217;s a neat utility that you can use to help you run your OSGi application on a variety of frameworks. <a href="http://paxrunner.ops4j.org/space/Pax+Runner">PAX Runner</a> uses the <a href="http://www.eclipse.org/pde">PDE</a> <code>org.eclipse.pde.ui.osgiFrameworks</code> extension point to supply frameworks.</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/08/paxrunner.png"><img src="http://eclipsesource.com/blogs/wp-content/uploads/2009/08/paxrunner-300x170.png" alt="PAX Runner" title="PAX Runner" width="300" height="170" class="alignnone size-medium wp-image-2678" /></a></p>
<p>To install PAX Runner, simply add their <a href="http://www.ops4j.org/pax/eclipse/update/">repository</a> via software installation wizard.</p>
<p>There&#8217;s an important thing to note about PAX Runner. When you&#8217;re self-hosting with a PAX Runner based framework, your bundles <strong>will be deployed before executed</strong>. This may cause launching to take a bit longer than you&#8217;re used to depending on the size of your application. This is different from the traditional PDE workflow where we don&#8217;t have a deployment step when self hosting because Equinox provides us with some great hooks to skip that process. If you&#8217;re curious how this works under the covers, PDE instructs Equinox where to look for classes for the various bundles in your workspace (usually in the <code>bin/</code> folder). This is known as the <em>development time classpath</em> and as far as I know, Equinox is the only framework to support this type of classpath (I filed a <a href="http://issues.apache.org/jira/browse/FELIX-136">bug</a> against Felix awhile ago).</p>
<p>On the whole, I recommend you give PAX Runner a try.</p>
<p>Also, if you have any ideas on how PDE can better support other frameworks, come <a href="http://www.eclipse.org/pde/support/">talk to us</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/08/14/eclipse-osgi-and-pax-runner/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nomenclature and the Evolution of Eclipse</title>
		<link>http://eclipsesource.com/blogs/2009/07/29/nomenclature-and-the-evolution-of-eclipse/</link>
		<comments>http://eclipsesource.com/blogs/2009/07/29/nomenclature-and-the-evolution-of-eclipse/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 14:52:04 +0000</pubDate>
		<dc:creator>Chris Aniszczyk</dc:creator>
				<category><![CDATA[syndicate]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[pde]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=2567</guid>
		<description><![CDATA[One of the great things about Eclipse is that it evolves, it&#8217;s not static. We reinvent ourselves. From IDE to RCP to Runtime. From Platform to e4 (e.g., the future). When we evolve, it gives us an opportunity to think about our lexicon. I recently sent an email to the Eclipse PMC entertaining the idea [...]]]></description>
			<content:encoded><![CDATA[<p>One of the great things about Eclipse is that it evolves, it&#8217;s not static. We reinvent ourselves.</p>
<p>From IDE to <a href="http://www.eclipse.org/rcp">RCP</a> to <a href="http://www.eclipse.org/rt">Runtime</a>. From <a href="http://www.eclipse.org/platform/">Platform</a> to <a href="http://wiki.eclipse.org/E4">e4</a> (e.g., <a href="http://dev.eclipse.org/blogs/mcqjustmcq/2009/07/25/eclipse-has-a-future/">the future</a>).</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/07/evolution.jpg"><img src="http://eclipsesource.com/blogs/wp-content/uploads/2009/07/evolution-300x223.jpg" alt="Evolution" title="Evolution" width="300" height="223" class="alignnone size-medium wp-image-2569" /></a></p>
<p>When we evolve, it gives us an opportunity to think about our lexicon. </p>
<p>I recently sent an <a href="http://dev.eclipse.org/mhonarc/lists/eclipse-pmc/msg00775.html">email</a> to the <a href="http://www.eclipse.org/eclipse/team-leaders.php">Eclipse PMC</a> entertaining the idea of deprecating our usage of the word &#8216;plug-in&#8217;:</p>
<blockquote><p>On last week&#8217;s Eclipse Architecture team call, I brought up the &#8216;plug-in versus bundle&#8217; naming issue. This naming issue also came up at this week&#8217;s PDE team call where we had consensus that deprecating the word plug-in would be a good idea. Furthermore, the new components in PDE (e.g., API Tools) have gone out of their way to not call things plug-ins. I also know the Equinox p2 team struggles with naming problems (e.g., calling things software).</p>
<p>&#8230;</p>
<p>My proposal is that we adopt &#8220;bundle&#8221; and deprecate &#8220;plug-in&#8221; as the official module term.</p></blockquote>
<p>If you&#8217;re interested in this, please comment on this <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=149113">bug</a>. There&#8217;s also another <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=277947">bug</a> open that wants to rename RCP if you&#8217;re interested in that too.</p>
<p>I would like to hear from the Eclipse and OSGi communities on what they think. Good or bad idea?</p>
<p>Would you welcome the change?</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/07/29/nomenclature-and-the-evolution-of-eclipse/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>PDE Build Compile Errors</title>
		<link>http://eclipsesource.com/blogs/2009/07/10/pde-build-compile-error-tip/</link>
		<comments>http://eclipsesource.com/blogs/2009/07/10/pde-build-compile-error-tip/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 05:01:46 +0000</pubDate>
		<dc:creator>Ian Bull</dc:creator>
				<category><![CDATA[eclipse]]></category>
		<category><![CDATA[syndicate]]></category>
		<category><![CDATA[pde]]></category>
		<category><![CDATA[pde build]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=2368</guid>
		<description><![CDATA[Yesterday I spent the day working on examples of how PDE Build can be used to build OSGi bundles.  I was setting up builders, copying files from my workspace to my builder, and running builds.   Early in the morning I was faced with the follow: The method disposeImageButtonImages(ImageButton) from the type ScaledWidgetFactory refers to [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I spent the day working on examples of how PDE Build can be used to build OSGi bundles.  I was setting up builders, copying files from my workspace to my builder, and running builds.   Early in the morning I was faced with the follow:</p>
<pre>The method disposeImageButtonImages(ImageButton) from the type
ScaledWidgetFactory refers to the missing type ImageButton</pre>
<p>Ok, a compile error, no big deal&#8230; the better part of a day later I finally had this solved.  Just so nobody ever has to deal with this particular error again, I thought I would post a small debugging tip you can use.  But first, some background on my day (after I saw the error):</p>
<ol>
<li>Ensure export from the UI works&#8230; yes!</li>
<li>PDE/Build defines a variable called pluginPath that you can use to point at additional plugin locations.  Since the missing type  &#8211;ImageButton in my case &#8212; was in a pre-compiled bundle that exists in my target, I assumed this variable was set wrong.  I tried different separators, bundle ordering and directory locations (with and without spaces in the name). I even tried putting the bundle in my baseLocation.  No dice.</li>
<li>You can debug Ant scripts using PDE/Build.  There are a few things that you must setup first, but after I did this I was able to debug the script and ensure that the &#8220;so called &#8216;missing&#8217;&#8221; bundle was indeed in my classpath.</li>
<li>At this point something hit me &#8212; the compile errors is on the method call, not the import statement. That means that the compiler found the type on import, but not when the method was called&#8230;. strange!</li>
<li>In this particular example we are using Import-Package as opposed to Require-Bundle. Maybe I found a bug&#8230; I changed all the code to use Require-Bundle&#8230; No Dice.</li>
<li>Because build can be finicky, and and a typo can cause all sorts of problems, I started again&#8230; Same problem.</li>
<li>Read a story to my daughter. (<em>Best part of the day, by far</em>)</li>
<li>Back to work&#8230; This time, I started making small changes in different bundles, copying them over, and trying again&#8230; At one point, IT WORKED!</li>
<li>Revert the changes&#8230; IT WORKS! &#8212; <em>Note: That&#8217;s not good</em></li>
<li>Start over, .. IT FAILS&#8230; make the same changes I did above.. IT FAILS!</li>
<li><strong>Curse</strong></li>
<li>Notice something.. when I copy the directories over, I am copying a bin/ directory that may (or may not) have fully built .class files.</li>
<li>Delete the bin/ directory .. IT WORKS!</li>
</ol>
<p>In fact, the problem will happen very infrequently.  It only happened because I was copying bundles from my workspace (not fetching them from CVS), and in some cases, the bundles were not fully built.</p>
<p>So, the lesson: <strong>If you get strange compile errors using PDE Build, try deleting the bundles bin/ directory</strong>.</p>
<p>Thanks goes out to Andrew Niefer who once again came through with a much better way off structuring my build.</p>
<input id="gwProxy" type="hidden" />
<input id="jsProxy" onclick="jsCall();" type="hidden" />
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/07/10/pde-build-compile-error-tip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSGi, Eclipse and API Management</title>
		<link>http://eclipsesource.com/blogs/2009/07/08/osgi-eclipse-and-api-management/</link>
		<comments>http://eclipsesource.com/blogs/2009/07/08/osgi-eclipse-and-api-management/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 18:34:20 +0000</pubDate>
		<dc:creator>Chris Aniszczyk</dc:creator>
				<category><![CDATA[syndicate]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[galileo]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[pde]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=1977</guid>
		<description><![CDATA[Recently, a few people have come to me ask how Eclipse maintains its API and versions. The intent of this question was to see what lessons there are to be learned for other OSGi-based applications. If we step back a bit, in essence, Eclipse is a large OSG application. On top of that, Eclipse is [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, a few people have come to me ask how Eclipse maintains its API and <a href="http://wiki.eclipse.org/Version_Numbering">versions</a>. The intent of this question was to see what lessons there are to be learned for other OSGi-based applications. If we step back a bit, in essence, Eclipse is a large OSG application. On top of that, Eclipse is a platform where people build their own OSGi applications on&#8230; it&#8217;s an OSGi party. As a result, there are many people dependent on the API Eclipse produces so the management of this API is important. If breaking API changes were common, people would have less desire to build on the platform. To help with this problem, Eclipse developed <a href="http://www.eclipse.org/pde/pde-api-tools/">PDE API Tools</a>. </p>
<p>I&#8217;ll discuss four main areas around API management that API Tools can help you with.</p>
<h4>API Comparisons</h4>
<p>I have seen some discussion of people wanting to know what new APIs were part of the Eclipse <a href="http://www.eclipse.org/galileo">Galileo</a> release. While it&#8217;s pretty easy to see the <a href="http://download.eclipse.org/eclipse/downloads/drops/R-3.5-200906111540/eclipse-news.html">new and noteworthy items</a> for the latest Eclipse release, it&#8217;s difficult to dive into and see what actual classes and methods were modified. To help alleviate this problem, PDE API Tools has the ability to produce API comparison reports to show exactly what has changed. I have mentioned the <strong>API Tooling</strong> view in a <a href="http://eclipsesource.com/blogs/2009/04/28/comparing-api-baselines/">past blog entry</a> for those who are interested.</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/07/api1.png"><img class="alignnone size-medium wp-image-2121" title="PDE API Tooling View" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/07/api1-300x148.png" alt="PDE API Tooling View" width="300" height="148" /></a></p>
<h4>API Compatibility</h4>
<p>One thing that&#8217;s important is being able to see binary compatibility issues between a build and a baseline. This is currently possible within the Eclipse IDE if you use PDE API Tools in the workspace, however, if you wanted to generate a report via an Ant task you can do that. As a sample, I generated a report against Eclipse 3.4.2 and Eclipse 3.5:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;UTF-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;project</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;api_analysis_reporting&quot;</span> <span style="color: #000066;">default</span>=<span style="color: #ff0000;">&quot;run&quot;</span> <span style="color: #000066;">basedir</span>=<span style="color: #ff0000;">&quot;.&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;baseline&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;/Users/chrisaniszczyk/eclipses/eclipse-SDK-3.4.2/eclipse&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;profile&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;/Users/chrisaniszczyk/eclipses/eclipse-SDK-3.5/eclipse&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;report_location&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${baseline}/api&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;html_report_location&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${baseline}/api-html&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;target</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;run&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;apitooling.analysis</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">baseline</span>=<span style="color: #ff0000;">&quot;${baseline}&quot;</span></span>
<span style="color: #009900;">	    	<span style="color: #000066;">profile</span>=<span style="color: #ff0000;">&quot;${profile}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">report</span>=<span style="color: #ff0000;">&quot;${report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">debug</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	     <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;apitooling.analysis_reportconversion</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">htmlfiles</span>=<span style="color: #ff0000;">&quot;${html_report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">xmlfiles</span>=<span style="color: #ff0000;">&quot;${report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">debug</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	    <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/target<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/project<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<h4>API Freeze</h4>
<p>Another aspect that&#8217;s important to Eclipse is the concept of an <a href="http://wiki.eclipse.org/Ganymede_Simultaneous_Release#Milestones_and_Release_Candidates">API Freeze</a>.</p>
<p><a href="http://eclipsesource.com/blogs/wp-content/uploads/2009/07/galileoschedule.png"><img src="http://eclipsesource.com/blogs/wp-content/uploads/2009/07/galileoschedule-300x214.png" alt="Galileo Schedule" title="Galileo Schedule" width="300" height="214" class="alignnone size-medium wp-image-2282" /></a></p>
<p>Towards the end of the Eclipse release, we implement an API Freeze which means that no new API can be added or modified after this point. Why have an API Freeze? Well, it helps ensure stable APIs for consumers looking to adopt a new version of Eclipse. From a producer point of view, how do you ensure that the API Freeze is actually enforced? Developers are human and make mistakes. Developers can be also be sneaky by modifying API.</p>
<p>To help enforce an API Freeze, PDE API Tools has the ability to produce freeze reports:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;UTF-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;project</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;api_freeze_reporting&quot;</span> <span style="color: #000066;">default</span>=<span style="color: #ff0000;">&quot;run&quot;</span> <span style="color: #000066;">basedir</span>=<span style="color: #ff0000;">&quot;.&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;baseline&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;/Users/chrisaniszczyk/eclipses/eclipse-SDK-3.4.2/eclipse&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;profile&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;/Users/chrisaniszczyk/eclipses/eclipse-SDK-3.5/eclipse&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;report_location&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${baseline}/api&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;html_report_location&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${baseline}/api-html&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;target</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;run&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;apitooling.apifreeze</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">baseline</span>=<span style="color: #ff0000;">&quot;${baseline}&quot;</span></span>
<span style="color: #009900;">	    	<span style="color: #000066;">profile</span>=<span style="color: #ff0000;">&quot;${profile}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">report</span>=<span style="color: #ff0000;">&quot;${report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">debug</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	     <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;apitooling.apifreeze_reportconversion</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">htmlfile</span>=<span style="color: #ff0000;">&quot;${html_report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">xmlfile</span>=<span style="color: #ff0000;">&quot;${report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">debug</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	    <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/target<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/project<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>As part of the Galileo release, we used freeze reports as a way to ensure API stability as we converged.</p>
<h4>API Usage</h4>
<p>From the consumer point of view, it&#8217;s interesting to see how people are consuming your APIs. To help with this, API Tools has the ability to run usage reports against a set of bundles. Awhile ago, I <a href="http://eclipsesource.com/blogs/2009/06/18/api-usage-scan-against-galileo/">blogged about this topic</a> and produced a <a href="http://download.eclipse.org/eclipse/pde/apitools/eclipse-galileo-rc4/api-html/">report</a> against most of the bundles included in the Galileo release:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;UTF-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;project</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;api_use_reporting&quot;</span> <span style="color: #000066;">default</span>=<span style="color: #ff0000;">&quot;run&quot;</span> <span style="color: #000066;">basedir</span>=<span style="color: #ff0000;">&quot;.&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;baseline&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;/Users/chrisaniszczyk/eclipses/eclipse-galileo&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;report_location&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${baseline}/api&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;html_report_location&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${baseline}/api-html&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;target</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;run&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;apitooling.apiuse</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">baseline</span>=<span style="color: #ff0000;">&quot;${baseline}&quot;</span></span>
<span style="color: #009900;">	    	<span style="color: #000066;">proceedonerror</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">report</span>=<span style="color: #ff0000;">&quot;${report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">considerinternal</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">considerapi</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">debug</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	     <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;apitooling.apiuse_reportconversion</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">htmlfiles</span>=<span style="color: #ff0000;">&quot;${html_report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">xmlfiles</span>=<span style="color: #ff0000;">&quot;${report_location}&quot;</span></span>
<span style="color: #009900;">	      	<span style="color: #000066;">debug</span>=<span style="color: #ff0000;">&quot;true&quot;</span></span>
<span style="color: #009900;">	    <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/target<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/project<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>I hope this helps and allows you to understand and adopt PDE API Tools.</p>
<p>Also, the PDE team is currently in the planning stages for the next release.</p>
<p>Please <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?classification=PDE">file any bugs</a> if you have issues or suggestions so the PDE team can act on them.</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/07/08/osgi-eclipse-and-api-management/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Install into Self, Eclipse Galileo Feature #6</title>
		<link>http://eclipsesource.com/blogs/2009/06/19/eclipse-galileo-feature-top-10-list-number-6/</link>
		<comments>http://eclipsesource.com/blogs/2009/06/19/eclipse-galileo-feature-top-10-list-number-6/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 19:43:40 +0000</pubDate>
		<dc:creator>Ian Bull</dc:creator>
				<category><![CDATA[syndicate]]></category>
		<category><![CDATA[galileo]]></category>
		<category><![CDATA[pde]]></category>

		<guid isPermaLink="false">http://eclipsesource.com/blogs/?p=1902</guid>
		<description><![CDATA[As readers of my blog are no doubt aware, I have been counting down the Top 10 Galileo features that I&#8217;m most excited about. Galileo is the name of this years “Eclipse Release Train”, the simultaneous release of 33 Eclipse projects. Galileo will available for download on June 24th, but “Friends of Eclipse” get it [...]]]></description>
			<content:encoded><![CDATA[<p>As readers of my blog are no doubt aware, I have been counting down the <a href="http://eclipsesource.com/blogs/2009/06/16/eclipse35-my-top-10-list-number-10/">Top</a> <a href="http://eclipsesource.com/blogs/2009/06/16/eclipse-galileo-feature-top-10-list-number-9/">10</a> <a href="http://eclipsesource.com/blogs/2009/06/17/eclipse-galileo-feature-top-10-list-number-8/">Galileo</a> <a href="http://eclipsesource.com/blogs/2009/06/18/eclipse-galileo-feature-top-10-list-number-7/">features</a> that I&#8217;m most excited about.  Galileo is the name of this years “<a href="http://www.eclipse.org/galileo/">Eclipse Release Train</a>”, the simultaneous release of 33 Eclipse projects.  Galileo will available for download on June 24th, but “Friends of Eclipse” <a href="http://www.eclipse.org/galileo/friends.php">get it sooner</a>.  <a href="http://www.eclipse.org/donate/">Friends of Eclipse</a> is a donation program setup by the Eclipse foundation.</p>
<p>Support the tools that support you. The best $35.00 you will ever spend.</p>
<p>Number 6 on my Top 10 list is the new <strong>Install Into Self</strong> option.  While many people view the Eclipse SDK as an excellent Java development environment; it&#8217;s the extensible nature of this environment that makes it so powerful. Eclipse is assembled from 100&#8242;s of plug-ins, and while you may commonly use other peoples plug-ins, the true power of Eclipse comes when you start to develop your own.  Before Galileo, the steps for building / testing / deploying / installing your own plug-in were quite cumbersome.  This has all changed in Eclipse 3.5.</p>
<p>Using Eclipse 3.5 you can quickly develop your own plug-in (maybe it&#8217;s a new static code analysis view or an awesome new twitter client – All the cool kids are building twitter clients these day), and deploy it directly into your running instance.  This makes development / testing / deploying much easier and enables all developers to “<a href="http://en.wikipedia.org/wiki/Eat_your_own_dog_food">eat their own dog food</a>”.</p>
<p><img class="aligncenter size-full wp-image-1942" title="installIntoSelf" src="http://eclipsesource.com/blogs/wp-content/uploads/2009/06/installIntoSelf1.png" alt="installIntoSelf1 Install into Self, Eclipse Galileo Feature #6" width="501" height="431" /></p>
<p>I consider this feature a “<em>game changer</em>” as it completely changes the way I work with Eclipse. Kudos for this feature go to Curtis Windatt with help from John Arthorne for p2 side of things.  Thanks guys!</p>
]]></content:encoded>
			<wfw:commentRss>http://eclipsesource.com/blogs/2009/06/19/eclipse-galileo-feature-top-10-list-number-6/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
