Aptana IDE for Web Programming
If you’ve been following along with my blog you know I’ve been experimenting with Drupal and picked a cheap, but functional editor for PHP websites. Now that I’m getting into things with the WSO2 mashup server I need some new tools to properly get my potatoes mashed correctly. I tried using the Komodo Editor (the aforementioned tool for PHP), but I need more. I mentioned this to a colleague and he recommended that I check out Aptana Studio 1.0 Community Release. The other potential tool is IntelliJ IDEA 7, but since that’s expensive I’ll hold off on that for now.
What I need is a more robust IDE that can deal with highlighting code, syntax checking, function/attribute dynamic lookup (like when you hit the “.”), and the ability to deal with Java, CSS, HTML, JSP, and Javascript.
The Aptana tool comes in two versions – an open-source community version and a “professional” version. I’m looking at the community edition. It also comes as a complete stand-alone install and as an RCP plugin that can be added into an existing Eclipse install. I’m going to look at both. The stand-alone will go on a Vista box and the RCP version will go into Eclipse 3.3 on Win XP.
Working with the Full Installation
Er well – I am a big Eclipse fan, but I’ve learned that all the hype about eclipse and plugins and ultimate nirvana are not always true. There are a lot of dependencies between plugins and this can really lead to issues. When first looking at a tool it is just easier to try the total install first. I normally have 3-4 Eclipse installs on my machine at any one point in time. I downloaded and installed the full version on my Vista box. The installer worked well and left me with a new Eclipse 3.2 install with all the Aptana plugins running. The whole package takes about 180 MB of disk.
Once Aptana is installed it starts up with its own welcome screen showing what language and service plugins are running. There were a few windows in the middle of the screen that didn’t load up properly. I’m not sure what those are, but they did not seem to keep the tool from working. The IDE prompted me for where my workspace was, I took the default. You have the choice to use projects or just open files ad hoc. Since I’m working with WSO2-MUS I just want to open a few things ad hoc for now. Once I open a file the highlighting and syntax checking kicks in just like in regular Java stuff.
One problem I’m having is that I can’t see how to get full function lookup and syntax checking for Javascript working. This could be a problem with Aptana or WSO2-MUS – not sure. I’ve opened a bunch of questions out on both of their forums. Moving on, I did also load up two difference eclipse IDEs at the same time to ensure there were no runtime conflicts and that worked ok too.
The project wizard is pretty nice, you can pick off a plain project or an “AJAX” project. When you do the AJAX thing you can select from a pretty wide variety of libraries. I created a project with the mootools framework – most of the major Javascript tools are here like scriptaculous, the Yahoo crap, etc.. It dumped out a base project – pretty sweet. I notice that in this project the lookup stuff (Code Assit) does work. There’s a panel on the left where you can register .js files for this. Pretty nice:
My problem thus must be with the WSO2-MUS.
Here’s a shot of the left panel…you can drag/drop new .js files in there to add them in as reference libraries for Code Assist:
When working with stand-alone files everything seems to work. As I just mentioned you need to be sure that you add your supporting files and libraries to the Code Assist window to get that stuff working. There’s a file browser down at the bottom of the left panel so you can easily browse the file system and open/close/svn files. Another nice feature of the full install is that it comes with SVN plugins already working. I’m a huge SVN fan so this is really nice to get them all at once. Another nice feature is the “outline” panel on the right that shows you the HTML structure of the page.
You can collapse and expand this and if you click on a tag it will take you to that spot in the code. You can see all this in the above picture where I clicked on the title tag.
RCP Plugin Installation and Operation
I also gave the plugin a try with a pre-existing Eclipse environment. In this case it is an Eclipse 3.3 (aka Europa) install, aka Europa. I have this installed with a lot of the basics for Jav/J2EE coding and modeling. When you go to the Aptana site and go to download and pick off Eclipse it will take you to a page of instructions. Grab the update site’s url and follow their instructions. Once you do that Eclipse will re-start and you will be good to go. A word of caution: on my machine I have a ton of crap and tend to do things manually. When I restarted the Eclipse workbench after the install, I got a crash. Eclipse would no longer start and I wouldn’t get really any decent error either.
I did some poking around and then posted something on the Aptana forums. After not getting a response for a while I went to google (not sure why I didn’t do this first…panic I guess). Well I didn’t find much so then I tried starting eclipse from a DOS box using various command line parameters. Still nothing so I used the “eclipsec” to try to get it up and I did get enough to see an exception. The exception pointed to an issue from the aptana class. So I went into the eclipse plugins directory and copied out all the aptana stuff and sure enough then Eclipse would start up so i twas definitely a problem with their plugins.
After all that I went back to google and searched on the exception. What I found was a bunch of products having the same issues. They were all citing incompatibility with JDK 1.4.2. Ya well sure…that’s ancient…certainly I don’t have that still!!! It can’t be me!!! D’oh! 🙂 Yep – I still have a weblogic server installed that uses this version and sure enough eclipse was grabbing it. A quick re-name of the bea home directory and a restart of Eclipse and everything is working.
From what I can tell everything seems to work in this install as with the full install. That’s pretty nice. Overall I like this tool since it supports a bunch of language types. I’ll have to crawl around on their site to see if they have any PHP support. That would be super cool. I can definitely say that I’ll be sticking with this tool for my mashup server…I’ll just have to lean on the WSO2 guys (or turn off their regulator?) to get the Code Assit stuff working. I’ll also start to explore more advanced functionality and also explore more in-depth functions. If you decide to check out this tool, be sure to grab the docs and use the forums on their website.
I see that Aptana does have PHP support! I just installed and gave it a shot. The support is a basic editor. It does not do direct debugging or deployments and things, but this is at least as good as komodo edit. nice! I would think that Aptana will be adding more support for PHP over time – they all these features for Ruby. So I guess my post on Cheap PHP IDEs needs an update. If they could add python that would be really a killer thing.
beren