<?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"
	>

<channel>
	<title>Code 9</title>
	<atom:link href="http://code9.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://code9.com</link>
	<description>Code 9</description>
	<pubDate>Wed, 19 Nov 2008 08:59:30 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>More changes afoot&#8230;</title>
		<link>http://code9.com/2008/11/19/more-changes-afoot/</link>
		<comments>http://code9.com/2008/11/19/more-changes-afoot/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 08:59:30 +0000</pubDate>
		<dc:creator>jeff</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=100</guid>
		<description><![CDATA[It was almost exactly 10 months ago that I blogged about leaving IBM. A lot has happened since.  Perhaps the coolest work-related thing is the announcement that came out this morning here at the Eclipse Summit Europe.  Today we announced that Code 9 and Innoopract have created EclipseSource.  The idea of EclipseSource [...]]]></description>
			<content:encoded><![CDATA[<p>It was almost exactly 10 months ago that I blogged about leaving IBM. A lot has happened since.  Perhaps the coolest work-related thing is the announcement that came out this morning here at the Eclipse Summit Europe.  Today we announced that Code 9 and Innoopract have created <a href="http://eclipsesource.com">EclipseSource</a>.  The idea of EclipseSource is to really get behind the Eclipse runtime vision and push Equinox, RAP, RCP, e4, ECF, &#8230; to new levels of consumability &#8212; both at the technical level and the pragmatic business level.</p>
<p>Jochen Krause (Innoopract CEO) and I will lead this new team.  We share the vision of a commercially backed, highly modular runtime platform. Technology for which businesses know they can get support, technology enhancements and extensions, and industrial-strength management infrastructure. That technology is Equinox, the runtime elements of Eclipse, in concert with product offerings that will be announced in the near future.</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/11/19/more-changes-afoot/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ESE Hackathon</title>
		<link>http://code9.com/2008/11/18/ese-hackathon/</link>
		<comments>http://code9.com/2008/11/18/ese-hackathon/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 22:27:43 +0000</pubDate>
		<dc:creator>jeff</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=99</guid>
		<description><![CDATA[The Equinox Hackathon at ESE is starting now...]]></description>
			<content:encoded><![CDATA[<p>This post is a little late but <a href="http://www.eclipsecon.org/summiteurope2008/">ESE</a> is just starting and I wanted to highlight the <a href="http://wiki.eclipse.org/Eclipse_Summit_Europe_2008_Equinox_Hackathon">Equinox Hackathon</a> that is going on at the conference.  This event is designed to encourage people to start building bundles, experimenting with Equinox and looking at services.  It&#8217;s a great chance to experiment and try things out.  Feel free to participate whether you are at the conference or not.  There will be a presentation at then end of the conference to highlight some of the things that were put together.</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/11/18/ese-hackathon/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip: PDE Build and Binary Cycles</title>
		<link>http://code9.com/2008/10/28/tip-pde-build-and-binary-cycles/</link>
		<comments>http://code9.com/2008/10/28/tip-pde-build-and-binary-cycles/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 01:27:33 +0000</pubDate>
		<dc:creator>zx</dc:creator>
		
		<category><![CDATA[spotlight]]></category>

		<category><![CDATA[tips]]></category>

		<category><![CDATA[build]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[pde]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=97</guid>
		<description><![CDATA[Learn how to build with binary cycles using PDE Build.]]></description>
			<content:encoded><![CDATA[<p>I recently spent some time with a client removing some cycles in bundles and discussing why cycles are <strong>evil</strong> in the first place. The problem is that even if you remove cycles from your own code, the code you <strong>depend on</strong> may not be cycle-free. This could be for many reasons, most of the time it&#8217;s due to legacy. So after some bundle cleansing, we setup an automated build&#8230; and had this dreaded error message come up in the logs:</p>
<p><em>&#8220;A cycle was detected when generating the classpath&#8230;&#8221;</em></p>
<p>I was sure this time that the fault didn&#8217;t lie with my client&#8217;s code, but someone else. I was right&#8230; the messy world of third-party dependencies can bring in some interesting baggage. This error was caused by a few third-party libraries that participated in a cycle, which is OK during runtime, even though poor architecture in my opinion. So how do you get around this? In the past, it was difficult in the Eclipse-world, but since 3.4, PDE Build was enhanced to allow binary cycles (cycles in the target you&#8217;re building against). To enable support for this, you simply have to specify the &#8216;<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=208011">allowBinaryCycles=true</a>&#8216; in your top level build configuration properties, similar to where you specify properties like <em>baseLocation</em>. As of 3.5M3, PDE UI will automatically enable binary cycles support and this option can be toggled via the UI:</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/picture-11.png"><img class="alignnone size-medium wp-image-98" title="picture-11" src="http://code9.com/wp-content/uploads/2008/10/picture-11-258x300.png" alt="" width="258" height="300" /></a></p>
<p>Hope this helps! Happy building and avoid cycles when you can!</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/28/tip-pde-build-and-binary-cycles/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Code 9 does Dallas/Fort-Worth</title>
		<link>http://code9.com/2008/10/28/code-9-does-dallasfort-worth/</link>
		<comments>http://code9.com/2008/10/28/code-9-does-dallasfort-worth/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 16:11:35 +0000</pubDate>
		<dc:creator>zx</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=94</guid>
		<description><![CDATA[Code 9 will be in the DFW area if you're interested to meet up!]]></description>
			<content:encoded><![CDATA[<p>The next stop on the Code 9 travel train is the Dallas Fort-Worth area this week!</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/dallas1b.jpg"><img class="alignnone size-medium wp-image-95" title="dallas1b" src="http://code9.com/wp-content/uploads/2008/10/dallas1b-300x115.jpg" alt="" width="300" height="115" /></a></p>
<p>Jeff and I will be at a conference and doing some client work so if anyone is interested in having dinner or frosty beverages, let us <a href="mailto:zx@code9.com">know</a>. We also have some cool demos we&#8217;re planning to do for <a href="http://www.eclipsecon.org/summiteurope2008/">Eclipse Summit Europe</a> if you want a sneak peak or can&#8217;t go to ESE.</p>
<p>By the way, this month at Code 9, our frosty beverage of choice is a seasonal variety, <a href="http://www.dogfish.com/brewings/Seasonal_Beers/Punkin_Ale/3/index.htm">Dogfish Head Punkin Ale</a>.</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/dogfishpumkin.gif"><img class="alignnone size-medium wp-image-96" title="dogfishpumkin" src="http://code9.com/wp-content/uploads/2008/10/dogfishpumkin.gif" alt="" width="240" height="211" /></a></p>
<p>Anyone else have a good seasonal brew that they have been drinking lately?</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/28/code-9-does-dallasfort-worth/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Code 9 at Eclipse Summit Europe</title>
		<link>http://code9.com/2008/10/20/code-9-at-eclipse-summit-europe/</link>
		<comments>http://code9.com/2008/10/20/code-9-at-eclipse-summit-europe/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 15:51:27 +0000</pubDate>
		<dc:creator>zx</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[conference]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[germany]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=92</guid>
		<description><![CDATA[Code 9 is speaking at Eclipse Summit Europe]]></description>
			<content:encoded><![CDATA[<p>One of my favorite Eclipse conferences is coming up, <a href="http://www.eclipsecon.org/summiteurope2008/">Eclipse Summit Europe 2008</a>! Multiple people from Code 9 will be speaking at the event, here&#8217;s a snapshot of our activities:</p>
<ul>
<li><strong>Monday</strong>
<ul>
<li>Anyone up for dinner or frosty beverages? Please email <a href="mailto:zx@code9.com">me</a>!</li>
</ul>
</li>
<li><strong>Tuesday</strong>
<ul>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=217">RT Symposium</a></li>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=218">e4 Symposium</a></li>
</ul>
</li>
<li><strong>Wednesday</strong>
<ul>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=15">What&#8217;s new in Plug-in Development?</a> - Chris Aniszczyk</li>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=89">Service Discovery and Remote Services using ECF</a> - Scott Lewis</li>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=142">Eclipse Project Update</a> - Jeff McAffer</li>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=140">Best Practices for Equinox and OSGi</a> - Jeff McAffer</li>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=71">RT Project Demo</a> - Jeff McAffer</li>
</ul>
</li>
<li><strong>Thursday</strong>
<ul>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=195">API Tooling in Eclipse</a> - Chris Aniszczyk</li>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=206">ECF Inside and Out</a> - Scott Lewis</li>
<li><a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=69">Equinox p2: provisioning your world</a> - Jeff McAffer</li>
</ul>
</li>
<li><strong>Friday</strong>
<ul>
<li>Anyone up for dinner or frosty beverages? Please email <a href="mailto:zx@code9.com">me</a>!</li>
</ul>
</li>
</ul>
<p>I hope people will be able to attend because there is going to be a lot of exciting work going around the <a href="http://wiki.eclipse.org/E4">e4</a> and <a href="http://www.eclipse.org/rt">RT</a> projects. There&#8217;s also going to be an <a href="http://www.eclipsecon.org/summiteurope2008/sessions?id=70">Equinox hack-a-thon</a>! I hope to see everyone there!</p>
<p>Also, as a reminder, the conference <a href="http://www.eclipsecon.org/summiteurope2008/hotels">hotel</a> is holding rooms until tomorrow, so please book your room soon!</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/20/code-9-at-eclipse-summit-europe/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ian Bull joins Code 9</title>
		<link>http://code9.com/2008/10/16/ian-bull-joins-code-9/</link>
		<comments>http://code9.com/2008/10/16/ian-bull-joins-code-9/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 14:20:23 +0000</pubDate>
		<dc:creator>zx</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=90</guid>
		<description><![CDATA[Ian Bull joins Code 9!]]></description>
			<content:encoded><![CDATA[<p>Ian Bull, the component lead for <a href="http://www.eclipse.org/gef/zest">Zest</a>, the Eclipse visualization framework, has joined Code 9. A lot of you may know Ian from his work on the <a href="http://www.eclipse.org/pde/incubator/dependency-visualization/">plug-in dependency visualizer</a>:</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/pde_graph_view.jpg"><img class="alignnone size-medium wp-image-91" title="pde_graph_view" src="http://code9.com/wp-content/uploads/2008/10/pde_graph_view-300x151.jpg" alt="" width="300" height="151" /></a></p>
<p>It was a pleasure to mentor Ian on the plug-in visualization project as I got to witness his enthusiasm first hand. Ian recently completed his PhD at the beautiful <a href="http://www.thechiselgroup.org/">University of Victoria</a>, has a second child on the way and brings forth a lot of good experience and energy. Expect to see great things coming from Ian in the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/16/ian-bull-joins-code-9/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PDE Leadership Changes</title>
		<link>http://code9.com/2008/10/09/pde-leadership-changes/</link>
		<comments>http://code9.com/2008/10/09/pde-leadership-changes/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 21:51:26 +0000</pubDate>
		<dc:creator>jeff</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=88</guid>
		<description><![CDATA[Chris and Darin now co-lead the PDE project!]]></description>
			<content:encoded><![CDATA[<p>I am really excited to announce that <a href="http://code9.com/team#chris">Chris Aniszczyk</a> and Darin Wright are now the official co-leads of the <a href="http://eclipse.org/pde">PDE project</a>.  Indeed they have been fulfilling this role for quite some time now so it is great to have their contributions recognized and formalized in this way.  Please join me in congratulating Chris and Darin and wishing them all the best in the challenges that lay ahead.</p>
<p>Why the change?  For many years now <a href="http://wassim-melhem.blogspot.com/">Wassim</a> and I have been the official leaders of the <a href="http://wiki.eclipse.org/PDE">PDE project</a>. Wassim is one of the early guys on the UI side of things and has contributed tremendously to the RCP tooling and many other facets of PDE. For my part I&#8217;ve been involved with PDE from the early days, mostly on the build side of things. Unfortunately, Wassim has moved on and while I retain a keen interest in PDE and <a href="http://code9.com">Code 9</a> funds some of the work, the project is not getting a lot of focus from me.  This change is a major bonus for the project.</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/09/pde-leadership-changes/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Building Platforms</title>
		<link>http://code9.com/2008/10/09/building-platforms/</link>
		<comments>http://code9.com/2008/10/09/building-platforms/#comments</comments>
		<pubDate>Thu, 09 Oct 2008 13:35:12 +0000</pubDate>
		<dc:creator>jeff</dc:creator>
		
		<category><![CDATA[news]]></category>

		<category><![CDATA[spotlight]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=87</guid>
		<description><![CDATA[Jeff McAffer talks with Martin Lippert about building platforms, API, Eclipse and other cool things.]]></description>
			<content:encoded><![CDATA[<p>A little while ago <a href="http://martinlippert.blogspot.com/">Martin Lippert</a> and I chatted about platforms, how to build them, API and a mess of other stuff.  Martin recorded the session and has put it up on <a href="http://www.se-radio.net/ ">SE Radio</a>.  <a href="http://www.se-radio.net/podcast/2008-10/episode-113-building-platforms-jeff-mcaffer">Check it out</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/09/building-platforms/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip: Eclipse, OSGi and Execution Environments</title>
		<link>http://code9.com/2008/10/08/tip-eclipse-osgi-and-execution-environments/</link>
		<comments>http://code9.com/2008/10/08/tip-eclipse-osgi-and-execution-environments/#comments</comments>
		<pubDate>Wed, 08 Oct 2008 20:58:56 +0000</pubDate>
		<dc:creator>zx</dc:creator>
		
		<category><![CDATA[spotlight]]></category>

		<category><![CDATA[tips]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[equinox]]></category>

		<category><![CDATA[osgi]]></category>

		<category><![CDATA[pde]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=83</guid>
		<description><![CDATA[Learn about execution environments in the OSGi world.]]></description>
			<content:encoded><![CDATA[<p>I was working with a client recently and the question of what are <a href="http://wiki.eclipse.org/index.php/Execution_Environments">execution environments</a> came up. Execution environments (EEs) are simply symbolic representations of JREs. For example, rather than talking about a specific JRE (with a specific name at a specific location on your disk), you can talk about the J2SE-1.4 execution environment. This way things <strong>can be shared</strong> without referencing specific paths. Furthermore, tools like PDE help setup your classpath compliance settings base on the EE you&#8217;re working with (on a per bundle basis).</p>
<p>Ok, the reason the question about EEs came up was because of this screenshot:</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/picture-1.png"><img class="alignnone size-medium wp-image-84" title="picture-1" src="http://code9.com/wp-content/uploads/2008/10/picture-1-300x289.png" alt="" width="300" height="289" /></a></p>
<p>What&#8217;s this screenshot show? Well, the client was interested in using a Base64 encoder so why not use one from the VM? At first, the comedian in me thought why not use one of the 20 we have in the SDK already?</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/picture-21.png"><img class="alignnone size-medium wp-image-85" title="picture-21" src="http://code9.com/wp-content/uploads/2008/10/picture-21-300x250.png" alt="" width="300" height="250" /></a></p>
<p>Ok, maybe that&#8217;s a little of an exaggeration <img src='http://code9.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Back to the problem at hand&#8230; in the beginning, things were OK&#8230; it wasn&#8217;t until the move to Eclipse 3.4 and the client updated his bundle to take advantage of execution environments. By selecting an execution environment, the client had his classpath updated and access rules were set on what packages are visible to the plug-in. Great! But why get the access restiction on the &#8217;sun.misc&#8217; package? OSGi bundles can clearly see packages from the VM, this isn&#8217;t a problem. The problem is that &#8217;sun.misc&#8217; isn&#8217;t a package that is considered to be included VMs (by default). You could imagine this become a problem if you&#8217;re bundles are working great on a specific Sun VM, but than people try to run your bundles on another VM that doesn&#8217;t have the &#8217;sun.misc&#8217; package available. If you&#8217;re curious about what packages are supplied by which execution environment, see the OSGi compendium specification (999) and take a peak into the Equinox profile files (i.e.,<a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.equinox/framework/bundles/org.eclipse.osgi/J2SE-1.4.profile?revision=1.5&amp;root=RT_Project&amp;view=markup"> J2SE-1.4</a>).</p>
<p>How do you solve this type of problem? Well, you have a couple options. The first, you can make OSGi aware of a package like &#8217;sun.misc&#8217; by setting a system property before launching:</p>
<p>-Dosgi.framework.extensions=sun.misc</p>
<p>The other option is to create a new bundle that simply exports what is available in the VM and have your bundles depend on that if they need the specific package. There are other ways to get around this issue but generally the first option is the preferred route. Both of these options should make the tooling happy. However, don&#8217;t be tempted to do this frequently as usually doing this is a sign that your bundles aren&#8217;t VM independent.</p>
<p>Oh, another tip&#8230; if you&#8217;re looking at debugging where packages are being wired from, <a href="http://www.eclipse.org/pde">PDE</a> includes a nice <strong>Plug-in Dependencies</strong> view to help you with this:</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/picture-31.png"><img class="alignnone size-medium wp-image-86" title="picture-31" src="http://code9.com/wp-content/uploads/2008/10/picture-31-300x149.png" alt="" width="300" height="149" /></a></p>
<p>Using this view, I can tell where my imported packages are coming from while I&#8217;m developing. For example, it&#8217;s easy to see if you&#8217;re getting a package from the VM for free or from some plug-in.</p>
<p>Hope this tip helps and happy hacking!</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/08/tip-eclipse-osgi-and-execution-environments/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip: Spellchecking in Eclipse</title>
		<link>http://code9.com/2008/10/03/tip-spellchecking-in-eclipse/</link>
		<comments>http://code9.com/2008/10/03/tip-spellchecking-in-eclipse/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 15:36:30 +0000</pubDate>
		<dc:creator>zx</dc:creator>
		
		<category><![CDATA[spotlight]]></category>

		<category><![CDATA[tips]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[rcp]]></category>

		<category><![CDATA[syndicate]]></category>

		<guid isPermaLink="false">http://code9.com/?p=78</guid>
		<description><![CDATA[Want to add spell checking to your Eclipse-based application?]]></description>
			<content:encoded><![CDATA[<p>Ever wanted to add spelling checking to a dialog, form or some editor in your Eclipse-based application?</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/picture-2.png"><img class="alignnone size-medium wp-image-79" title="picture-2" src="http://code9.com/wp-content/uploads/2008/10/picture-2-300x300.png" alt="" width="300" height="300" /></a></p>
<p>Well, I needed to do this recently for a project and thought I would share with people how it can be done (also, I had people emailing me to write more tips ;p). The spell checking infrastructure in Eclipse is handled by the text editor framework. Speficially, there&#8217;s an extension point where you can add your own spellchecking engines if you so desire:</p>
<p><a href="http://code9.com/wp-content/uploads/2008/10/picture-3.png"><img class="alignnone size-medium wp-image-80" title="picture-3" src="http://code9.com/wp-content/uploads/2008/10/picture-3-300x224.png" alt="" width="300" height="224" /></a></p>
<p>The Java Development Tools (JDT) provides an engine by default that gets activated for things like java source files, properties files and &#8216;text&#8217; files. To take advantage of this functionality, we need to hook into the text editing framework inside of Eclipse. I&#8217;ve provided a simple <a href="http://code9.com/wp-content/uploads/2008/10/code9-spell-example.zip">example</a> to show you how you can do it, but here are the basics:</p>
<pre class="syntax-highlight:java">
...
final SourceViewer sourceViewer = new SourceViewer(composite, null, null, true, SWT.MULTI | SWT.V_SCROLL | SWT.WRAP);
// grab the text widget from the source viewer
StyledText fTextField = sourceViewer.getTextWidget();
// this is where the magic happens for spellchecking
// see TextSourceViewerConfiguration#getReconciler
Document document = new Document(text);
SourceViewerConfiguration config =
     new TextSourceViewerConfiguration(EditorsUI.getPreferenceStore());
sourceViewer.configure(config);
sourceViewer.setDocument(document, annotationModel);
...
</pre>
<p>If you ever have written an editor within Eclipse, this code should look familiar to you. If not, well, welcome to text editing framework within Eclipse. You&#8217;ll notice that by default, everything is spellchecked. This is because of how the TextSourceViewerConfiguration sets up reconciliation by default (see getReconciler):</p>
<pre class="syntax-highlight:java">
...
SpellingService spellingService= EditorsUI.getSpellingService();
IReconcilingStrategy strategy= new SpellingReconcileStrategy(sourceViewer, spellingService);
MonoReconciler reconciler= new MonoReconciler(strategy, false);
...
</pre>
<p>If you need to only spellcheck certain areas of a document, like say comment headers, you need to provide your own reconciler and partitions. Than you need to setup your partitions that you want to have a spellchecking strategy (SpellingReconcileStrategy) associated with.</p>
<p>I hope this helps and here is the <a href="http://code9.com/wp-content/uploads/2008/10/code9-spell-example.zip">code</a> used in this tip if you&#8217;re interested.</p>
]]></content:encoded>
			<wfw:commentRss>http://code9.com/2008/10/03/tip-spellchecking-in-eclipse/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
