Difference between revisions of "Creating an OJ release version"
Jump to navigation
Jump to search
Line 8: | Line 8: | ||
where profile is at least one of the following: | where profile is at least one of the following: | ||
− | The | + | The basic maven profiles are |
− | :; | + | :; snapshot |
− | :: a ''snapshot'' of the basic edition | + | :: packages a ''snapshot'' of the basic edition ''core'' and ''plus'' (plus extensions from lib/plus) |
− | :: example | + | :; release |
+ | :: builds of ''core'' and ''plus'' targeted for release, which can be named via | ||
+ | ::: <pre>-D version.number=X.X.X -D version.release=release </pre> | ||
+ | :: 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-CORE.zip | ||
− | |||
− | |||
− | |||
::: target/OpenJUMP-20120423-r2834-PLUS.zip | ::: target/OpenJUMP-20120423-r2834-PLUS.zip | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
the following profiles can be added to build additional files | the following profiles can be added to build additional files | ||
− | :; installer | + | :; portable |
− | :: builds multi platform executable izpack installers (*.jar,*.exe) for | + | :: 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: | :: example result: | ||
− | ::: target/izpack/ | + | ::: target/izpack/OpenJUMP-Installer-20120423-r2834-CORE.jar |
− | ::: target/izpack/ | + | ::: target/izpack/OpenJUMP-Installer-20120423-r2834-CORE.exe |
− | ::: target/izpack/ | + | ::: target/izpack/OpenJUMP-Installer-20120423-r2834-PLUS.jar |
− | ::: target/izpack/ | + | ::: target/izpack/OpenJUMP-Installer-20120423-r2834-PLUS.exe |
:; srczip | :; srczip | ||
:: a zip file containing the source files of the build | :: a zip file containing the source files of the build |
Revision as of 15:09, 21 April 2013
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[,installer][,srczip][,javadoc] -D version.number=X.X.X -D version.release=stable
- you can select either core and plus (both are the snapshots) or release (builds releases for CORE and PLUS)
- 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