Enhancements for the aai-common library
[aai/aai-common.git] / pom.xml
1 <!--
2
3     ============LICENSE_START=======================================================
4     org.onap.aai
5     ================================================================================
6     Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
7     ================================================================================
8     Licensed under the Apache License, Version 2.0 (the "License");
9     you may not use this file except in compliance with the License.
10     You may obtain a copy of the License at
11
12        http://www.apache.org/licenses/LICENSE-2.0
13
14     Unless required by applicable law or agreed to in writing, software
15     distributed under the License is distributed on an "AS IS" BASIS,
16     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17     See the License for the specific language governing permissions and
18     limitations under the License.
19     ============LICENSE_END=========================================================
20
21 -->
22 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
23          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
24     <modelVersion>4.0.0</modelVersion>
25     <parent>
26         <groupId>org.onap.oparent</groupId>
27         <artifactId>oparent</artifactId>
28         <version>2.1.0</version>
29     </parent>
30
31     <groupId>org.onap.aai.aai-common</groupId>
32     <artifactId>aai-common</artifactId>
33     <version>1.6.6-SNAPSHOT</version>
34     <packaging>pom</packaging>
35     <name>aai-aai-common</name>
36     <description>Contains all of the common code for resources and traversal repos</description>
37
38     <modules>
39         <module>aai-parent</module>
40                 <module>aai-rest</module>
41                 <module>aai-schema-ingest</module>
42                 <module>aai-annotations</module>
43         <module>aai-aaf-auth</module>
44                 <module>aai-core</module>
45                 <module>aai-auth</module>
46         <module>aai-els-onap-logging</module>
47                 <module>aai-utils</module>
48                 <module>aai-schema-abstraction</module>
49     </modules>
50
51     <profiles>
52         <profile>
53             <id>docker</id>
54             <modules>
55                 <module>aai-common-docker</module>
56             </modules>
57         </profile>
58     </profiles>
59
60     <properties>
61         <aai.generate.schema>true</aai.generate.schema>
62         <sitePath>/content/sites/site/org/onap/aai/aai-common/${project.artifactId}/${project.version}</sitePath>
63         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
64         <onap.nexus.snapshot.path>/content/repositories/snapshots/</onap.nexus.snapshot.path>
65         <onap.nexus.snapshot.id>ecomp-snapshots</onap.nexus.snapshot.id>
66         <onap.nexus.release.path>/content/repositories/releases/</onap.nexus.release.path>
67         <onap.nexus.release.id>ecomp-releases</onap.nexus.release.id>
68     </properties>
69
70     <build>
71         <pluginManagement>
72             <plugins>
73                 <!--
74                 Using https://code.revelc.net/formatter-maven-plugin/ for Eclipse formatter
75                 Using https://github.com/diffplug/spotless/tree/master/plugin-maven for import order
76                 Use in combination to rewrite code and imports, then checkstyle
77
78                 mvn formatter:format spotless:apply process-sources
79                 -->
80                 <plugin>
81                     <groupId>net.revelc.code.formatter</groupId>
82                     <artifactId>formatter-maven-plugin</artifactId>
83                     <version>2.8.1</version>
84                     <configuration>
85                         <configFile>${project.parent.basedir}/onap-java-formatter.xml</configFile>
86                     </configuration>
87                     <!-- https://code.revelc.net/formatter-maven-plugin/
88                          use mvn formatter:format to rewrite source files
89                          use mvn formatter:validate to validate source files -->
90                 </plugin>
91                 <plugin>
92                     <groupId>com.diffplug.spotless</groupId>
93                     <artifactId>spotless-maven-plugin</artifactId>
94                     <version>1.18.0</version>
95                     <configuration>
96                         <java>
97                             <importOrder>
98                                 <order>com,java,javax,org</order>
99                             </importOrder>
100                         </java>
101                     </configuration>
102                     <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven
103                          use mvn spotless:apply to rewrite source files
104                          use mvn spotless:check to validate source files -->
105                 </plugin>
106                 <plugin>
107                     <groupId>org.apache.maven.plugins</groupId>
108                     <artifactId>maven-compiler-plugin</artifactId>
109                     <configuration>
110                         <source>1.8</source>
111                         <target>1.8</target>
112                     </configuration>
113                 </plugin>
114                 <plugin>
115                     <groupId>org.apache.maven.plugins</groupId>
116                     <artifactId>maven-source-plugin</artifactId>
117                     <version>3.0.1</version>
118                     <executions>
119                         <execution>
120                             <id>attach-sources</id>
121                             <phase>deploy</phase>
122                             <goals>
123                                 <goal>jar-no-fork</goal>
124                             </goals>
125                         </execution>
126                     </executions>
127                 </plugin>
128                 <plugin>
129                     <groupId>org.apache.maven.plugins</groupId>
130                     <artifactId>maven-deploy-plugin</artifactId>
131                     <version>2.8.2</version>
132                 </plugin>
133                 <plugin>
134                     <groupId>com.mycila</groupId>
135                     <artifactId>license-maven-plugin</artifactId>
136                     <version>3.0</version>
137                     <configuration>
138                         <header>LICENSE.TXT</header>
139                         <includes>
140                             <include>src/main/java/**</include>
141                             <include>src/test/java/**</include>
142                             <include>pom.xml</include>
143                         </includes>
144                         <skipExistingHeaders>true</skipExistingHeaders>
145                         <skip>false</skip>
146                     </configuration>
147                 </plugin>
148             </plugins>
149         </pluginManagement>
150         <plugins>
151             <plugin>
152                 <groupId>org.apache.maven.plugins</groupId>
153                 <artifactId>maven-site-plugin</artifactId>
154                 <version>3.6</version>
155                 <configuration>
156                     <reportPlugins>
157                         <plugin>
158                             <groupId>org.apache.maven.plugins</groupId>
159                             <artifactId>maven-project-info-reports-plugin</artifactId>
160                             <version>2.4</version>
161                             <configuration>
162                                 <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
163                                 <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
164                             </configuration>
165                             <reports>
166                                 <report>dependencies</report>
167                             </reports>
168                         </plugin>
169                         <plugin>
170                             <groupId>org.apache.maven.plugins</groupId>
171                             <artifactId>maven-javadoc-plugin</artifactId>
172                             <version>2.8</version>
173                             <configuration>
174                                 <additionalparam>-Xdoclint:none</additionalparam>
175                             </configuration>
176                         </plugin>
177                     </reportPlugins>
178                 </configuration>
179                 <dependencies>
180                     <dependency>
181                         <groupId>org.apache.maven.wagon</groupId>
182                         <artifactId>wagon-webdav-jackrabbit</artifactId>
183                         <version>2.10</version>
184                     </dependency>
185                 </dependencies>
186             </plugin>
187             <plugin>
188                 <groupId>com.mycila</groupId>
189                 <artifactId>license-maven-plugin</artifactId>
190             </plugin>
191         </plugins>
192     </build>
193
194     <distributionManagement>
195         <repository>
196             <id>${onap.nexus.release.id}</id>
197             <name>ECOMP Release Repository</name>
198             <url>${onap.nexus.url}${onap.nexus.release.path}</url>
199         </repository>
200         <snapshotRepository>
201             <id>${onap.nexus.snapshot.id}</id>
202             <name>ECOMP Snapshot Repository</name>
203             <url>${onap.nexus.url}${onap.nexus.snapshot.path}</url>
204         </snapshotRepository>
205         <site>
206             <id>ecomp-site</id>
207             <url>dav:${onap.nexus.url}${sitePath}</url>
208         </site>
209     </distributionManagement>
210     <reporting>
211         <plugins>
212             <plugin>
213                 <groupId>org.apache.maven.plugins</groupId>
214                 <artifactId>maven-javadoc-plugin</artifactId>
215                 <version>2.10.4</version>
216                 <configuration>
217                     <failOnError>false</failOnError>
218                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
219                     <docletArtifact>
220                         <groupId>org.umlgraph</groupId>
221                         <artifactId>umlgraph</artifactId>
222                         <version>5.6</version>
223                     </docletArtifact>
224                     <additionalparam>-views -Xdoclint:none</additionalparam>
225                     <excludePackageNames>org.onap.aai.domain.yang.*:org.onap.aai.util.*</excludePackageNames>
226                     <useStandardDocletOptions>true</useStandardDocletOptions>
227                 </configuration>
228             </plugin>
229         </plugins>
230     </reporting>
231
232     <!-- Start of ONAP Specific Repositories -->
233     <repositories>
234         <repository>
235             <id>AJSC</id>
236             <name>AJSC repository</name>
237             <url>https://mvnrepository.com/artifact/com.att.ajsc</url>
238         </repository>
239         <repository>
240             <id>restlet</id>
241             <name>maven reslet</name>
242             <url>https://maven.restlet.com/</url>
243         </repository>
244
245         <repository>
246             <id>central</id>
247             <name>Maven 2 repository 2</name>
248             <url>http://repo2.maven.org/maven2/</url>
249         </repository>
250         <repository>
251             <id>ecomp-releases</id>
252             <name>ECOMP Release Repository</name>
253             <url>${onap.nexus.url}/content/repositories/releases/</url>
254         </repository>
255         <repository>
256             <id>ecomp-snapshots</id>
257             <name>ECOMP Snapshot Repository</name>
258             <url>${onap.nexus.url}/content/repositories/snapshots/</url>
259         </repository>
260     </repositories>
261     <!-- End of ONAP Specific Repositories -->
262 </project>