<?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>Alex&#039;s Adventures on the Infobahn &#187; jdee</title>
	<atom:link href="http://www.bennee.com/~alex/blog/tag/jdee/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bennee.com/~alex/blog</link>
	<description>the wanderings of a supposed digital native</description>
	<lastBuildDate>Tue, 24 Jan 2012 08:38:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Thoughts on Java</title>
		<link>http://www.bennee.com/~alex/blog/2010/02/12/thoughts-on-java/</link>
		<comments>http://www.bennee.com/~alex/blog/2010/02/12/thoughts-on-java/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 11:18:05 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[emacs]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jdee]]></category>
		<category><![CDATA[opennms]]></category>

		<guid isPermaLink="false">/~alex/blog/?p=1741</guid>
		<description><![CDATA[I&#8217;ve been spending the last week hacking around in Java. One of the components of the product I develop is the open source OpenNMS. As I&#8217;ve mentioned before it&#8217;s been lightly modified by myself to blend in better with our code mainly in the JSP department for it&#8217;s web interface. Last week I discovered I [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been spending the last week hacking around in Java. One of the components of the product I develop is the open source <a href="http://www.opennms.org/wiki/Main_Page">OpenNMS</a>. As I&#8217;ve mentioned before it&#8217;s been lightly modified by myself to blend in better with our code mainly in the JSP department for it&#8217;s web interface. Last week I discovered I needed to make a slightly deeper change to the code to export some more data to it&#8217;s scripting interface.</p>
<p>
While I was exploring the code base and scratching my head at some of the exceptions being thrown I thought I&#8217;d have yet another go at making my Java development environment a little more integrated than binding the build script to &#8220;C-c c&#8221;.</p>
<p>
So far I have a couple of observations about Java code. The first is that it never seems to do very much. As you navigate the code base you tend to find a lot of simple skeleton classes, usually working as simple adaptors between one framework and the next. Thanks to Java&#8217;s strong support for <a href="http://en.wikipedia.org/wiki/Generic_programming">generics</a> and <a href="http://en.wikipedia.org/wiki/Interface_(Java)">interfaces</a> you often find yourself looking at a class wondering what else it might do. None of this is helped by Java&#8217;s standard/deep/directory/naming/strategy/of/doom. My usual tools of a decent programmers editor and grep start to show their limitations. Java is a language that is designed to be serviced by a full <A href="http://en.wikipedia.org/wiki/Integrated_development_environment">IDE</a> to help you make sense of the whole system.</p>
<p>
Having previously tried and failed to get <a href="http://jdee.sourceforge.net/">JDEE</a> working I thought I would capitulate and try <a href="http://www.eclipse.org/">Eclipse</a>. I blithely thought that given the fact it&#8217;s the standard Java developers tool with a long development history it would Just Work &#8482;. I was to be sorely disappointed.</p>
<p>
I tried several different versions on both my home Gentoo machine as well as various PPA based versions on my work Ubuntu setup. A lot of times it failed to start up due to some Mozilla dependency issues and when I did finally get it started I couldn&#8217;t get any of the plugins to install. The entire Eclipse stack is designed around the concept of plugins and it seems every Java framework comes with it&#8217;s own additional plugin for Eclipse. Without the plugins I wasn&#8217;t able to get a working build or any sort of source level debugging. Eventually I had to concede defeat and bin the IDE approach and return to some tedious grep work and piece together the structure of the software by hand so I could finally crank out what in the end was a <a href="http://marc.info/?l=opennms-devel&#038;m=126582776211008&#038;w=2">fairly simple patch</a>. I doubt I shall return to Eclipse.</p>
<p>
I did have a brief tinker with JDEE which at least installed better from it&#8217;s SVN repo (needing a one line patch). However the documentation is a little sparse on how to import an existing large project into it&#8217;s view of the world. Annoyingly potentially useful links like the FAQ referenced on the <a href="http://jdee.sourceforge.net/">main site</a> lead to <a href="http://sunsite.auc.dk/fom/jde/cache/1.html">dead ends</a>. I never got to the point of seeing if I had a working Java <a href="http://www.emacswiki.org/emacs/GrandUnifiedDebugger">GUD</a> integration. I hope to revisit JDEE in the future when I&#8217;m a little less pressed for time at work. It&#8217;s hard to work up the enthusiasm for plumbing in support for a language you never intend to use for fun in your own time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bennee.com/~alex/blog/2010/02/12/thoughts-on-java/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
	</channel>
</rss>

