openstack4j-core
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.github.openstack4j.core</groupId>
<artifactId>openstack4j-core</artifactId>
<version>3.12</version>
</dependency><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.github.openstack4j.core</groupId>
<artifactId>openstack4j-parent</artifactId>
<version>3.12</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>openstack4j-core</artifactId>
<name>OpenStack4j Core</name>
<description>OpenStack Java API</description>
<url>https://github.com/openstack4j/openstack4j/</url>
<packaging>jar</packaging>
<build>
<finalName>openstack4j-core</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.3.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<minimizeJar>true</minimizeJar>
<shadedArtifactAttached>true</shadedArtifactAttached>
<createSourcesJar>true</createSourcesJar>
<shadedClassifierName>withdeps</shadedClassifierName>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<version>5.1.8</version>
<configuration>
<instructions>
<Bundle-Name>${project.name}</Bundle-Name>
<Export-Package>
<!-- core.transport.internal is imported by jersey2 connector! -->
<!-- !org.openstack4j.core.transport.internal, -->
!org.openstack4j.openstack.compute.internal,
!org.openstack4j.openstack.compute.internal.ext,
!org.openstack4j.openstack.heat.internal,
!org.openstack4j.openstack.identity.internal,
!org.openstack4j.openstack.image.internal,
<!-- openstack.internal is imported by connectors! -->
<!-- !org.openstack4j.openstack.internal, -->
<!-- logging.internal is imported by logging plugins! -->
<!-- !org.openstack4j.openstack.logging.internal, -->
!org.openstack4j.openstack.networking.internal,
!org.openstack4j.openstack.networking.internal.ext,
!org.openstack4j.openstack.storage.block.internal,
!org.openstack4j.openstack.storage.object.internal,
!org.openstack4j.openstack.telemetry.internal,
org.openstack4j,
org.openstack4j.*
</Export-Package>
<Private-Package>
org.openstack4j.openstack.compute.internal,
org.openstack4j.openstack.compute.internal.ext,
org.openstack4j.openstack.heat.internal,
org.openstack4j.openstack.identity.internal,
org.openstack4j.openstack.image.internal,
org.openstack4j.openstack.networking.internal,
org.openstack4j.openstack.networking.internal.ext,
org.openstack4j.openstack.storage.block.internal,
org.openstack4j.openstack.storage.object.internal,
org.openstack4j.openstack.telemetry.internal
</Private-Package>
<Import-Package>
!org.openstack*,
*
</Import-Package>
<!--
Required for SPI in OSGi:
http://aries.apache.org/modules/spi-fly.html#specconf
This bundles uses SPI to locate implementations for:
org.openstack4j.api.APIProvider
org.openstack4j.core.transport.HttpExecutorService
org.openstack4j.openstack.logging.LoggerFactorySupplier
This bundle defines an implementation for following services in META-INF-services:
org.openstack4j.api.APIProvider
-->
<Require-Capability>
osgi.serviceloader;
filter:="(osgi.serviceloader=org.openstack4j.api.APIProvider)";cardinality:=multiple,
osgi.serviceloader;
filter:="(osgi.serviceloader=org.openstack4j.core.transport.HttpExecutorService)";cardinality:=multiple,
osgi.serviceloader;
filter:="(osgi.serviceloader=org.openstack4j.openstack.logging.LoggerFactorySupplier)";cardinality:=multiple;resolution:=optional,
osgi.extender; filter:="(osgi.extender=osgi.serviceloader.processor)",
osgi.extender; filter:="(osgi.extender=osgi.serviceloader.registrar)"
</Require-Capability>
<Provide-Capability>
osgi.serviceloader; osgi.serviceloader=org.openstack4j.api.APIProvider
</Provide-Capability>
<Embed-Transitive>
true
</Embed-Transitive>
<Embed-Dependency>
jackson-dataformat-yaml
</Embed-Dependency>
</instructions>
</configuration>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>2.5</version>
<!-- Build jar with specified name and including the OSGi-ready manifest -->
<configuration>
<finalName>${project.artifactId}-${release.version}</finalName>
<!-- Take manifest generated by maven-bundle-plugin -->
<archive>
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>4.2.1</version>
<executions>
<!-- Generate bundle manifest -->
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
<configuration>
<instructions>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
</instructions>
</configuration>
</execution>
</executions>
</plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.apache.felix
</groupId>
<artifactId>
maven-bundle-plugin
</artifactId>
<versionRange>
[2.5.3,)
</versionRange>
<goals>
<goal>manifest</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>29.0-jre</version>
</dependency>
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.33</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven.javadoc.plugin.version}</version>
<configuration>
<author>true</author>
<protected>true</protected>
<excludePackageNames>*.internal</excludePackageNames>
<reportOutputDirectory>docs</reportOutputDirectory>
<destDir>javadoc</destDir>
<doclint>none</doclint>
</configuration>
</plugin>
</plugins>
</reporting>
</project>