This release's major new feature is dependency downloading using Maven 2's Ant tasks. The main reason I used Maven 2 over Ivy is
because I've heard rumors that Ant 1.7 will include dependency downloading - and they're planning on integrating the work that
Maven has already done.
One of the nice things about using Maven 2's Ant Tasks, is you can download Maven 2 and generate your Eclipse or IDEA (possibly even Netbeans) project files using "mvn eclipse:eclipse" or "mvn idea:idea". You can also use Maven 2 to build and test things if you like. The only thing that doesn't currently when using Maven to test Equinox is the web tests with Cargo. I can try to get those working if there's enough demand. For now, you'll have to use Ant if you want to test the UI.
All of the frameworks used in Equinox, as well as its build/test system is explained in Spring Live. A summary of the changes are below (detailed release notes can be found in JIRA):
- Removed packaged JARs in favor of Maven 2's Ant Tasks. Dependencies are now downloaded on-demand, greatly reducing the size of Equinox-based applications.
- By specifying compile, test and runtime dependencies in a pom.xml file, Equinox applications can now be built with Maven 2. The only difference between building with Maven 2 and Ant (at this time) is that the M2 build does not support testing with Cargo. However, there is an M2 Cargo plugin so this shouldn't be hard to fix if you have that itch.
- Added DWR, Script.aculo.us and Prototype to simplify Ajax development.
- Added Beandoc support - simply run "ant beandoc" to see javadoc-style documentation of Spring context files.
- Refactored UserManagerTest to be UserManagerImplTest; renamed UserManagerIntegrationTest to UserManagerTest.
- Changed BaseDAOTestCase to extend AbstractTransactionalDataSourceSpringContextTests.
- [Hibernate] Added example ehcache.xml to web/WEB-INF/classes for default cache settings.
- [JSF] Removed client-side validation because corejsf-validator.jar causes issues with Spring's Ant-style path matching.
- [Spring] Fixed number editor and edit logic in UserFormController.
- [Struts] Fixed issue with installation where ContextLoaderPlugin was loading ApplicationContext a 2nd time b/c the listener was not being commented out.
- Dependent packages upgraded:
- Cargo 0.6
- Hibernate 3.1
- iBATIS 2.1.6
- JPOX 1.1.0 Beta 4
- MyFaces 1.1.1
- PostgreSQL JDBC Driver 8.1 Build 404
- Spring 1.2.6
- Struts 1.2.8
The basic Equinox download contains all the various web and persistence framework options in the "extras" folder. If you have issues replacing the web framework or persistence engine, please enter an issue in JIRA and I'll build and upload a customized version for you.