Creating an OJ release version
Jump to navigation
Jump to search
New Build/Release Procedure
The new build and release procedure uses maven.
Maven profiles
Command line to build and package OpenJUMP with maven is
mvn package -P <profile>,<profile>,...
where profile is at least one of the following:
The basic maven profiles are
- snapshot
- packages a snapshot of the basic edition core and plus (plus extensions from lib/plus)
- release
- builds of core and plus targeted for release, which can be named via
-D version.number=X.X.X -D version.release=release
- they mainly differ from snapshots because they
- - do not contain source code
- - do not expose language files in language/ folder
- example results:
- target/OpenJUMP-20120423-r2834-CORE.zip
- target/OpenJUMP-20120423-r2834-PLUS.zip
- example results:
the following profiles can be added to build additional files
- portable
- builds portable zip files, one per edition. takes care of setting executable bits and recompresses jar files.
- example results:
- target/recompress/OpenJUMP-Portable-20120423-r2834-CORE.zip
- target/recompress/OpenJUMP-Portable-20120423-r2834-PLUS.zip
- installer (needs portable)
- builds multi platform executable izpack installers (*.jar,*.exe) for both core and plus from the portable packaging
- example result:
- target/izpack/OpenJUMP-Installer-20120423-r2834-CORE.jar
- target/izpack/OpenJUMP-Installer-20120423-r2834-CORE.exe
- target/izpack/OpenJUMP-Installer-20120423-r2834-PLUS.jar
- target/izpack/OpenJUMP-Installer-20120423-r2834-PLUS.exe
- srczip
- a zip file containing the source files of the build
- example result:
- target/OpenJUMP-20120425-r2834-src.zip
- javadoc
- build java doc html files for the current source
- example result:
- target/apidocs/
Release
The command line to release a new version of OpenJUMP is
mvn package -P release[,portable[,installer]][,srczip][,javadoc] -D version.number=X.X.X -D version.release=release
- for releases you might want to give a version.number (default=unknown) and a version.release (default=stable)
example
mvn package -P release -D version.number=1.5.1
Old Release Process
- update the readme.txt
- summarize the changes to the previous version, based on the change log file (copy/sorting out)
- compile everything with the Ant script (check the java version to compile against)
- add the license, openjump.exe, and readme files (if not already included)
- so the platform independent zip & source release may be ready after copying the lic files into the zip (but best is to compare the zip content of an older release with the just created version)
- create a win-installer using Nullsoft NSIS (maybe with a pointer to download java 1.6) and include before-hand the ecw and mrsid libs into this edition (see also the notes on the svn for the past releases: e.g. for OJ 1.3.1)
- create another zip/release version that includes the sextante tools, postgis and print-plugin; based on the platform independent zip
- write the release notes
- upload the files to sourceforge
- make an announcement on slashgeo & our wiki & our sourceforge new section & change our webpage/links
- finally, updating of the documentation on the wiki on the new functions