|
Talk Details
equivalence: configuring Java projects to build and run on Linux, or, "why I hate autoconf and what I did about it." |
| Name |
Andrew Cowie |
 |
| Organisation |
Operational Dynamics |
| Website |
http://www.operationaldynamics.com/ |
| Scope |
Technical |
| Topic |
Cross platform applications |
| Type |
talk |
| Abstract |
Java is a mature platform for application development with a rich array of libraries to draw upon. Running Java programs, however, especially on Linux, has historically been a bit tricky. Java may be "portable" but setting up an execution environment can be frustrating in the extreme: Rather than having a single command to execute you have to muck around with finding the exact right things to put on your CLASSPATH, knowing the exact class name to run, and even finding a Java VM that will actually work can be a pain.
The traditional approach to this sort of problem is to use autoconf and automake. But in the Java world, *all* you have to do is identify and select a compiler, identify and select a runtime environment, and locate and formulate an appropriate classpath. That's it.
equivalence is a tool which takes a new approach to the configuration problem, and makes it quick and easy to develop and distribute using Java on Linux. We take an unusual approach: it's not much more than a set of Perl scripts which find prerequisites and then create a make fragment. That fragment is the included by a well constructed Makefile which just builds what needs building. You can build and run either from command line or from within your IDE. equivalence supports changing between runtimes and compilers so you can quickly verify that your code works in Free Java as well as within (say) Eclipse running in real Java.
So this talk will talk about the general configuration problem, how the nature of Java constrains and simplifies what you have to take care of, and some thoughts on how to approach dealing with it. I will offer some tips around how to effectively develop in both in traditional Java, using an IDE like Eclipse and using gcj to compile to native ... all at the same time! |
| Pre-requisites |
Anyone who knows Java and wants to do development on Linux but isn't quite sure how to effectively combine the tools available - this talk is for you.
If you have ever struggled with trying to make your code available to others (especially in the open source world when you want someone to have a "quick look" at your code but know they will trip all over trying to get it running) you will benefit from this talk.
We'll chat about bootstrapping new projects, sharing code with others, and best of all how you can focus on coding and not worry about build infrastructure.
And one lucky audience attendee will win a free cup of coffee, so how can you think this talk is NOT for you? |
| Profile |
Andrew is a long time Unix and Linux user & advocate, but somewhat unusually was an infantry officer in the Canadian army, having graduated from Royal Military College with a degree in engineering physics. He saw service across North America and a peacekeeping tour in Bosnia. He later ran operations for an SMS company in Manhattan and was a part of recovering the company after the Sept 11 attacks.
Now based in Sydney, Andrew runs Operational Dynamics, a management consultancy helping clients worldwide with technology strategy, changes & upgrades, enterprise architecture, and performance improvement for mission critical systems & the people who run them. Andrew is a frequent conference speaker, presenting about increasing the level of professionalism in the operations world.
On the technical side, Andrew has extensive experience as a Unix/Linux sysadmin, Java developer, and has long been a GNOME enthusiast. Most recently, he has been contributing by testing the releases from the java-gnome language bindings project, packaging it for Gentoo, and writing applications using java-gnome, eclipse, and gcj. |
|
|
See Talk Schedule
|
SPONSORS
Principal Sponsor
Diamond Sponsor
Platinum Sponsor
Platinum Sponsor
Gold Sponsor
Silver Sponsors
Internet Sponsor
PC Infrastructure Sponsor
Supporting Sponsors
Event Logistics

|