JavaDevelopmentToolsets
Launchpad Entry: packageselection-server-n-java-dev-toolsets
Created: JamesPage
Contributors:
Packages affected: Maven
Summary
This specification outlines the details of packaging a number of popular Java and Groovy 'coding-by-convention' development tool-sets for Ubuntu.
Release Note
Ubuntu now features a [Gradle|Spring Roo|Grails|buildr] development toolset that you can use to build your [Java|Groovy) applications.
Rationale
Ubuntu currently packages Ant and Maven 2 to support Java packaging and development; a number of other development/build tool-sets including Gradle, Spring Roo, Grails and buildr are gaining popularity in the Java/Groovy development community and we should consider packaging for Ubuntu.
User stories
- Felix is a Java developer who is new to the Spring development toolset; he quickly and easily installs both the Spring core libraries and the Spring Roo toolset on his Ubuntu Desktop without needing to download from www.springsource.com.
- Janice is a Java developer who is fed-up of writing realms of XML to support Maven based build processes; she quickly and easily installs buildr on her Ubuntu desktop and uses it as a drop in replacement for her existing maven based Java projects and new Java/Scala/Groovy development projects.
- Eric is a System Administrator for an estate Hudson based continuous integration servers; his development teams have adopted a new build toolset called Gradle and he is quickly and easily able to install this on all of his Ubuntu server infrastructure to support the requirements of the development team.
- Luke is a Groovy developer who wants to use Grails to develop his next Web 2.0 project; he quickly and easily installs Grails on his Ubuntu Desktop without having to download lots of zips from various websites.
Assumptions
None at this point in time.
Design
Grails
URL |
|
Current release |
1.3.5 |
Dependencies |
|
Debian ITP |
- Popular Spring/Java based Web 2.0 development tool-set using the Groovy development language. Implements the 'coding-by-convention' paradigm eliminating the requirement for developers to write loads of boiler-plate/configuration allowing focus on what really adds value to an application.
- Easy deployment of resulting .war artifacts onto Tomcat (already in main archive) for production deployment.
- Uses gradle as a build system (see below)
- Miguel Landaeta is working on this package in Debian.
Gradle
URL |
|
Current release |
0.8/0.9-rc1 |
Dependencies |
|
Debian ITP |
- build-by-convention Groovy based build system for developing Groovy and Java applications
- Used by Grails (see above).
- Gradle uses gradle to build itself (supplied in the source zip file)
- Miguel Landaeta is working on this package in Debian.
Spring Roo
URL |
|
Current release |
1.1.0 RC1 |
Dependencies |
|
Debian ITP |
- Spring/Java based web application framework for developing Java based web applications (alternative to Grails).
- Implements the 'coding-by-convention' paradigm
- Miguel Landaeta is assigned the ITP for this package in Debian.
- Maven based build process:
- some re-bundling for other jars for OSGi compatibility
- some dependence on non-free jars such as oracle JDBC drivers.
buildr
URL |
|
Current release |
1.4.3 |
Dependencies |
ruby-full ruby1.8-dev libopenssl-ruby build-essential rubygems |
Debian ITP |
N/A |
- Ruby based build-by-convention build system for Java,Scala and Groovy.
- Based on Rake (Ruby make)
- Potential drop-in replacement for Maven (to be validated).
- Distributed as a Ruby gem so may be easy to on-board to Debian and Ubuntu?
Implementation
TBC
Test/Demo Plan
TBC
Unresolved issues
TBC
BoF agenda and discussion
Use this section to take notes during the BoF; if you keep it in the approved spec, use it for summarising what was discussed and note any options that were rejected.
ServerTeam/Specs/JavaDevelopmentToolsets (last edited 2010-10-21 12:53:36 by host86-169-243-0)