summary refs log tree commit diff
path: root/doc
diff options
context:
space:
mode:
authorHartmut Goebel <h.goebel@crazy-compilers.com>2016-04-16 10:51:22 +0200
committerRicardo Wurmus <ricardo.wurmus@mdc-berlin.de>2016-04-19 16:55:03 +0200
commite1c963bf0d31a4b9813844ebdcd10c9213022bd0 (patch)
tree043a4a5b2c787d66bae041ef9fae9c08e0cf53d3 /doc
parent4d16cc51333eeb729c6fe381ebe21047f6b41087 (diff)
downloadguix-e1c963bf0d31a4b9813844ebdcd10c9213022bd0.tar.gz
doc: Add specification for Java packages
* doc/guix.texi (Java Packages): New subsection.
Diffstat (limited to 'doc')
-rw-r--r--doc/guix.texi21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 9e634135a8..54dc7061e8 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -226,6 +226,7 @@ Packaging Guidelines
 * Synopses and Descriptions::   Helping users find the right package.
 * Python Modules::              Taming the snake.
 * Perl Modules::                Little pearls.
+* Java Packages::               Coffee break.
 * Fonts::                       Fond of fonts.
 
 Contributing
@@ -10776,6 +10777,7 @@ needed is to review and apply the patch.
 * Synopses and Descriptions::   Helping users find the right package.
 * Python Modules::              Taming the snake.
 * Perl Modules::                Little pearls.
+* Java Packages::               Coffee break.
 * Fonts::                       Fond of fonts.
 @end menu
 
@@ -11017,6 +11019,25 @@ are also prepended by @code{perl-}.  Such modules tend to have the word
 prefix.  For instance, @code{libwww-perl} becomes @code{perl-libwww}.
 
 
+@node Java Packages
+@subsection Java Packages
+
+Java programs standing for themselves are named as any other package,
+using the lowercase upstream name.
+
+To avoid confusion and naming clashes with other programming languages,
+it is desirable that the name of a package for a Java package is
+prefixed with @code{java-}.  If a project already contains the word
+@code{java}, we drop this; for instance, the package @code{ngsjava} is
+packaged under the name @code{java-ngs}.
+
+For Java packages containing a single class or a small class hierarchy,
+we use the lowercase class name, replace all occurrences of @code{.} by
+dashes and prepend the prefix @code{java-}.  So the class
+@code{apache.commons.cli} becomes package
+@code{java-apache-commons-cli}.
+
+
 @node Fonts
 @subsection Fonts