1 <?xml version="1.0" encoding="UTF-8"?>
3 Copyright (c) 2016 Red Hat, Inc. and others. All rights reserved.
5 This program and the accompanying materials are made available under the
6 terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
9 <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">
10 <modelVersion>4.0.0</modelVersion>
13 <groupId>org.opendaylight.aaa</groupId>
14 <artifactId>aaa-parent</artifactId>
15 <version>0.18.2-SNAPSHOT</version>
16 <relativePath>../parent</relativePath>
19 <artifactId>aaa-cli-jar</artifactId>
20 <name>ODL :: aaa :: ${project.artifactId}</name>
21 <packaging>jar</packaging>
25 <groupId>com.google.guava</groupId>
26 <artifactId>guava</artifactId>
29 <groupId>net.sf.jopt-simple</groupId>
30 <artifactId>jopt-simple</artifactId>
31 <version>5.0.4</version>
34 <groupId>org.opendaylight.aaa</groupId>
35 <artifactId>aaa-idm-store-h2</artifactId>
38 <!-- Completely disable transitive dependencies -->
40 <artifactId>*</artifactId>
44 <!-- Now repeat the few really needed dependencies which we would normally get transitively -->
46 <groupId>org.opendaylight.aaa</groupId>
47 <artifactId>aaa-authn-api</artifactId>
50 <groupId>org.apache.commons</groupId>
51 <artifactId>commons-text</artifactId>
54 <groupId>com.h2database</groupId>
55 <artifactId>h2</artifactId>
56 <scope>compile</scope>
59 <!-- Now for the FAT JAR we need to fix up some <scope>provided to be <scope>compile -->
61 <groupId>org.slf4j</groupId>
62 <artifactId>slf4j-api</artifactId>
63 <scope>compile</scope> <!-- Not provided -->
66 <groupId>org.slf4j</groupId>
67 <artifactId>slf4j-simple</artifactId>
68 <scope>compile</scope> <!-- Not test -->
70 <!-- Testing Dependencies -->
72 <groupId>org.opendaylight.yangtools</groupId>
73 <artifactId>testutils</artifactId>
76 <groupId>org.opendaylight.aaa</groupId>
77 <artifactId>aaa-password-service-api</artifactId>
80 <groupId>org.opendaylight.aaa</groupId>
81 <artifactId>aaa-password-service-impl</artifactId>
88 <artifactId>maven-failsafe-plugin</artifactId>
89 <!-- TODO Remove when https://git.opendaylight.org/gerrit/#/c/48400/ is merged -->
92 <id>integration-test</id>
94 <goal>integration-test</goal>
106 <groupId>org.apache.maven.plugins</groupId>
107 <artifactId>maven-shade-plugin</artifactId>
111 <phase>package</phase>
116 <createDependencyReducedPom>false</createDependencyReducedPom>
117 <minimizeJar>true</minimizeJar>
120 <artifact>*:*</artifact>
122 <exclude>META-INF/*.SF</exclude>
123 <exclude>META-INF/*.DSA</exclude>
124 <exclude>META-INF/*.RSA</exclude>
128 <artifact>org.opendaylight.aaa:aaa-shiro</artifact>
130 <include>org/opendaylight/**</include>
134 <artifact>com.h2database:h2</artifact>
136 <!-- AAA cli does not use bnf, fulltext, jdbcx, jmx, server and tools -->
137 <exclude>org/h2/bnf/**</exclude>
138 <exclude>org/h2/fulltext/**</exclude>
139 <exclude>org/h2/jdbcx/**</exclude>
140 <exclude>org/h2/jmx/**</exclude>
141 <exclude>org/h2/server/**</exclude>
142 <exclude>org/h2/tools/**</exclude>
146 <artifact>org.opendaylight.aaa:aaa-password-service-api</artifact>
148 <include>org/opendaylight/**</include>
152 <artifact>org.opendaylight.aaa:aaa-password-service-impl</artifact>
154 <include>org/opendaylight/**</include>
159 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
160 <mainClass>org.opendaylight.aaa.cli.jar.Main</mainClass>