* doc/guix.texi (Java Packages): New subsection. --- doc/guix.texi | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
diff --git a/doc/guix.texi b/doc/guix.texi index dcc1124..c1f80cb 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10979,6 +10979,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's 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{dnsjava} +is packaged under the name @code{java-dns}. + +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 -- 2.7.4