APB – Project Build System Readme
Welcome to APB!
APB is a simple, yet powerfull, project build system that inherits some ideas from Ant and Maven while trying to avoid the use of complex XML files to define the metadata of the project. Project Definition is done in Java so you have the full power of Java plus the benefit of using your favorite IDE to edit the configuration files. Here are some of the features APB provides out-of-the-box:
- Simple project definition based on default layouts, but with flexibility to accomodate your preferred one.
- Model based builds: APB is able to build projects based on metadata about the project.
- Full extensibility using Java
- Dependency management
- Full project lifecycle, including compilation, packaging and testing.
- Coverage support during testing
- Documentation generation
- Generation of project files for common IDEs (Currently Intellij Idea)
- Ant tasks to integrate APB projects into foreign contexts.
- Command line invocation including shell-completion
- Source: http://github.com/emiliolg/apb
- Wiki: http://github.com/emiliolg/apb/wikis/home
- Installer: Simple Installer
You can grab the installer from here
And then run it with java – jar.
It supports 2 basic modes:
- Simple extraction (Option -x):
Extracts everything under a subdirectory of the current working directory.
- Installation under specified bin and lib directories:
Just pass the bin directory as an argument.
You can also use the --lib option to specify a directory where to copy all the jars.
Additionally the --ant option can be used to indicate a directory where to install the jar with the ant tasks for apb.
Building from source code
APB requires at least Java 6.
You should first get APB’s source code from git:
~> git clone git://github.com/emiliolg/apb.git
Go to APB’s directory and run
~> cd apb ~/apb> ./build.sh [Apb.resources] Copying 3 resources [Apb.resources] to /Users/juancn/apb/modules/apb/output/classes [Apb.compile] Compiling 73 files [Apb.package] Building: /Users/juancn/apb/lib/apb.jar [Apb.package] Building: /Users/juancn/apb/lib/apb-src.jar [ApbAnt.resources] Copying 1 resource [ApbAnt.resources] to /Users/juancn/apb/modules/apb-ant/output/classes [ApbAnt.compile] Compiling 2 files [ApbAnt.package] Building: /Users/juancn/apb/lib/ant-apb.jar
BUILD COMPLETED in 2448 milliseconds.
You can now add the
bin directory to your
PATH environment variable and install the command line completion handler.
Add the following to your
export PATH="$PATH:~/apb/bin" . ~/apb/bin/completion/apb-complete.sh
Licensed under the Apache License, Version 2.0 (the “License”);
You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0