The z2-Environment is an open source infrastructure to develop, configure, and run standard Java solutions without build infrastructure nor deployment procedures and so reduces development operations costs significantly.
During development and maintenance you do not need to have a local build environment installed that complements your source code.
The z2-Environment rebuilds Java sources as required and selectively from your development workspace leading to fast development roundtrips and consistent deployments, and ultimately to minimized integration pains.
Impala allows you to divide a large Spring-based application into a hierarchy of modules. These modules can be dynamically added, updated or removed.
Because Impala-based applications are genuinely modular, they are much easier to maintain than vanilla Spring applications.
Impala radically boosts productivity of Spring application development. This is enabled by the dynamic module loading capability, the seamless integration with Eclipse, and the efficient mechanisms for running Spring integration tests, both individually and within suites. When writing applications you only rarely need to restart your JVM, allowing your application changes to be reflected almost instantly. No long restart waits required!
Impala also features a build system, based on ANT, and dependency management capabilities, which you can optionally use.
For up to date news on development of Impala, see the project blog.
Impala is developed under the Apache Licence, Version 2.
It is currently common to build a number of releases from a single code base. For example, a development release, a QA release, a production release and perhaps customer-specific releases. However, these releases seem to differ mostly in the contents of their XML configuration files, and then only very little. Maintaining all these slightly different configuration files is a real nuisance.
XConf was created to simplify this maintenance. Its fundamental premise is that a single development-release (or production-release) configuration file is created and maintained, and is processed by XConf at either build or deployment time into an appropriate release by applying one or more XML-based scripts. Each script contains only the differences required to create the appropriate release, thus removing the need for the mass duplication of configuration files.
This is not really a new solution, since XSLT has been used in the past to do this quite successfully, but XPath can get a little arcane, and maintaining transformation scripts using XSLT can become really complex very quickly. XConf uses a very simple and compact method of specifying elements that need to be processed, and provides some very useful constructs to make transformations painless.
This page will try to explain one particular process that can be used to version your projects, as a developer. While the process covered here will use one example of how to accomplish effective versioning, the concepts can be used anywhere.
Externalizer is a directory based Ant task to externalize strings. The externalize process search all occurrences of a pattern defined string and externalize this string in a further file. The great advantage of the Externalizer is the scalability and extendability via modular structure. Smooth integration into Apache Ant gives an advantage to configure the Externalizer in an easy way.
The Externalizer can be used with all types of files or programming languages, f.e. php, java and so on. For each programming language you can define your own patterns to find strings, to substitute and to externalize them.
Xooctory is an open source continuous integration server, aiming to provide the following features:
* Open Source
* Massively scalable
* Flexible
* Build dependency aware
* Instant and rich feedback
* Secured
Maven DocCheck Plugin is a report-type plugin for Apache Maven. It will create and register a report on missing and corrupt javadoc comments using the Sun Doc Check Doclet.
Generates documentation for the Java code in the project using the Doc Check Doclet. The default settings will suit many projects, and simply entering maven doccheck will create the standard documentation.
The Archive Builder Eclipse plug-in provides a wizard to specify the building process of Java archives (jar, war, ear, ...). Then, archives can be manipulated directly through a context menu in the Project Explorer view.
This project collects and consolidates data from several QA tools and keeps track of them overtime. This allows developers, architects and project managers alike to be presented with a trend of the QA statistics of their project.
The following tools are currently supported:
* Checkstyle: code style validation and design checks. QALab keeps track of number of violations per file and overall.
* PMD: Code checks (possible bugs, dead code, sub-optimal code, etc). QALab keeps track of number of violations per file and overall.
* PMD CPD: Duplicate code (always a bad idea) detection. QALab keeps track of number of the overall number of duplicated lines.
* FindBugs: fantastic tool to detect potential bugs (really!). QALab keeps track of number of violations per file and overall.
* Cobertura: Coverage tool. QALab keeps track of percentage of branch and line coverage.
* Simian: excellent duplicate code detection (non-open source). QALab keeps track of number of the overall number of duplicated lines.
Ivy is a popular dependency manager focusing on flexibility and simplicity.
Find out more about its unique enterprise features, what people say about it,
and how it can improve your build system!
Artifactory is a Maven2 proxy repository with advanced features. It is based on JCR (using JackRabbit as the implementation), with a web UI based on Wicket, and embeded Jetty for quick start. All artifacts are stored in an embedded Derby DB.
Crucible is a flexible, layered set of tools for pulling down software from the web, building it, running tests on it, and reporting any unusual behaviors back to the parent project.
But since every testing project is unique, we strive to structure Crucible as a set of distinct tools that can be used independently or in other frameworks. Thus, if you're working on your own test harness, we hope you can cherry pick something of use to you from Crucible. :-)