English French
If the package provides *multiple* JAR files, they SHOULD be installed in a `+%{name}+` subdirectory
Versioned JAR files (`+*-%{version}.jar+`) MUST NOT be installed unless the package is a compatibility package
Packages MAY provide alternative filenames as long as they do not conflict with other packages
BuildRequires and Requires
Java packages MUST BuildRequire their respective build system:
`+BuildRequires: maven-local+` for packages built with Maven
`+BuildRequires: ant+` for packages built with ant
`+BuildRequires: java-devel+` for packages built with javac
Java binary packages or their dependencies MUST have Requires (generated by RPM or manual) on:
`+java-headless+` or `+java-headless >= 1:minimal_required_version+`
`+javapackages-filesystem+`
If java-headless requirement is insufficient package MUST have Requires:
`+java+` or `+java >= 1:minimal_required_version+`
Javadoc installation
javadoc documentation MAY be generated
If javadoc documentation is generated it MUST be installed into a directory of `+%{_javadocdir}/%{name}+` as part of javadoc subpackage
Directory or symlink `+%{_javadocdir}/%{name}-%{version}+` SHOULD NOT exist.
The javadoc subpackage MUST be declared `+noarch+` even if main package is architecture specific.
No class-path in MANIFEST.MF
JAR files MUST NOT include `+class-path+` entry inside META-INF/MANIFEST.MF