%global base_name discovery %global short_name commons-%{base_name} Name: apache-%{short_name} Version: 0.5 Release: 1 Epoch: 2 Summary: Apache Commons Discovery License: ASL 2.0 URL: http://commons.apache.org/discovery Source0: http://archive.apache.org/dist/commons/discovery/source/commons-discovery-0.5-src.tar.gz Patch0: %{name}-addosgimanifest.patch Patch1: %{name}-remove-unreliable-test.patch BuildArch: noarch BuildRequires: maven-local mvn(commons-logging:commons-logging) mvn(junit:junit) BuildRequires: mvn(org.apache.commons:commons-parent:pom:) BuildRequires: mvn(org.apache.maven.plugins:maven-assembly-plugin) %description The Discovery component is about discovering, or finding, implementations for pluggable interfaces. Pluggable interfaces are specified with the intent that multiple implementations are, or will be, available to provide the service described by the interface. Discovery provides facilities for finding and instantiating classes, and for lifecycle management of singleton (factory) classes. %package javadoc Summary: API documentation for %{name} %description javadoc %{summary}. %prep %setup -q -n %{short_name}-%{version}-src %patch0 %patch1 -p1 %mvn_file : %{short_name} %{name} %build %mvn_build -- -Dcommons.osgi.symbolicName=org.apache.commons.discovery %install %mvn_install %files -f .mfiles %doc RELEASE-NOTES.txt %license LICENSE.txt NOTICE.txt %files javadoc -f .mfiles-javadoc %license LICENSE.txt NOTICE.txt %changelog * Thu Aug 13 2020 chengzihan - 0.5-1 - Package init