| Home Up |
Copied from:
http://www.jpackage.org/policy.php on: 10 Nov 2002 JPackage packaging policyPackageName
The package name, hereafter refered to as Exception: if it is a requirement that multiple versions of a package can be installed to a single machine, relevant part of the version number is appended to complete software name to form the package name. Package name must contain only lowercase characters. Version
The package version, hereafter referred to as
Exception: non-numeric version extensions, such as "pre",
"rc", "beta", etc, are prohibited as they may confuse Exception: when no exact version is available, as in non-tagged CVS snapshot, use the snapshot date in YYYYMMDD format. Release
The package release, hereafter refered to as Exception: when non-numeric version extensions are used, this number is preceded by the number 0, a dot, and the version extension to ensure proper release ordering. GranularitySmall is beautiful: prefer several modular subpackages when possible. The main package must contain only basic files needed for running the software, with license agreement and basic documentation files. Any optional file must be provided as a separate subpackage, with exact version and release dependency to the main package.
Any demo or sample files must be provided as a separate
Any user manual must be provided as a separate
Each Javadoc tree must be provided as a separate
Sectionsfree section contains free software. non-free section contains non-free and non-distributable software. DependenciesA free package must avoid optional non-free runtime dependencies. Build dependencies are needed, however, to ensure proper build environment. FilesLocations
Data and demo files must be installed into the standard
Javadoc files must be installed into a
Application archives must be installed under the
Names
The general idea is that given package name, one should be able
to deduce jar name(s): package abcd should contain either a
single
Main jars stored directly under
Secondary jars stored directly under
Jars stored in a All zip format archive must be converted to jar format, and a compatibility symlink be provided. All legacy names must be converted to standard names, and a compatibility symlink be provided if there's substantial difference. Compatibility symlinks must be versioned too. For every versioned jar or symlink, a corresponding unversioned symlink must be provided to allow version independant use. GranularityOnce again, small is beautiful: prefer several modular jars when possible. Avoid duplicate classes, and remove redundant jars. BuildingIn order to track source origin, it is preferable to use unmodified original archives, when available in a form suitable for building. Never use provided external binaries. Delete them to ensure potential build interference. RunningAll applications must use a standardized wrapper script, using the JPackage function library. All servers must be shipped with usual service script, logrotate configuration, etc...
Classpath references in Last updated: Sun, 10 Nov 2002 13:36:42 -0500 |