...
-SNAPSHOT is a special marker in maven that tell everybody that this particular piece of code is under development and might change at any time. Opposed to a normal versioned release like '4.0.0', a snapshot is never a stable release. Maven will often try to get a more recent version of a SNAPSHOT during compile. A stable release is fixed, once published there is no changing it anymore. Snapshots are normally used to indicate that a build is made of the HEAD or trunk of a project. Later on this page more about releases using maven.
...
Running mvn in source root will download and setup dependency jars the deps directory for use with the old ant system.
...
Warning | ||
---|---|---|
| ||
This feature is still being developed and tested, might not work as expected |
Warning | ||
---|---|---|
| ||
Follow the following wiki page for building specific versions of CloudStack from source code. Versions covered: 4.0 and above |
Checkout Building where we document building process for specific version of CloudStack such as 4.0 oss/nonoss etc.
Warning | ||
---|---|---|
| ||
The project is migrating from ant/waf to maven next to some changes on how to do distributions and binary releases. Below are the instructions used until the 4.1.0 version was set on master. Most of these instructions are still valid for 4.1.0, but check back regularly as maven might introduce some changes to the build process |
This build process is based on ant, waf and maven. In future, we'll try to have maven do everything for us.
Code Block |
---|
$ cd incubator-cloudstack
$ mvn -P deps # gets
$ ant clean-all build-all
$ ant deploy-server # ant deploy-server before you deploydb
$ ant deploydb # checkout how to deploy db with mvn above; usual ant stuff :)
|
To buid with nonoss plugins we need to apply two patches(0001-fix-nonoss-build.patch and 0002-BUILD-nonoss-libs-for-CloudStack.patch):
...
Use waf to build packages for linux systems that use rpms, like RedHat, CentOS and fedora.
...
Code Block |
---|
$ mvn install -P deps && dpkg-buildpackage |
WIP: Package using deb profile (feature under development uses jdeb plugin, in https://github.com/bhaisaab/incubator-cloudstack/tree/debs-maven debs-maven branch):
...
Zsh/Bash/Emacs/Vim/Grep/Sed/Awk/Javac...
Code Block |
---|
$ sh deps/install-non-oss.sh
$ mvn -Dnonoss install
$ ant debug # Good ol' way of doing things
|
Following Building CloudStack section above.
Import the project as Maven project. Build with maven, set socket type debugger on port 8787, follow Building CloudStack section above.FIXME: Add on how to use IntelliJ IDEA with CS, building, debugging, editing, git checkouts
See Using Eclipse With CloudStack
...