Fix dependency issue on older version of Tinkerpop
[aai/gizmo.git] / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0"
2          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4     <modelVersion>4.0.0</modelVersion>
5
6     <parent>
7         <artifactId>ajsc-archetype-parent</artifactId>
8         <groupId>com.att.ajsc</groupId>
9         <version>2.0.0</version>
10     </parent>
11     <groupId>org.onap.aai.gizmo</groupId>
12     <artifactId>gizmo</artifactId>
13     <version>1.1.0-SNAPSHOT</version>
14     <name>aai-gizmo</name>
15
16     <properties>
17         <module.ajsc.namespace.name>crud-api</module.ajsc.namespace.name>
18         <module.ajsc.namespace.version>v1</module.ajsc.namespace.version>
19         <ajscRuntimeVersion>2.0.0</ajscRuntimeVersion>
20         <absoluteDistFilesRoot>/appl/${project.artifactId}</absoluteDistFilesRoot>
21         <nexusproxy>https://nexus.onap.org</nexusproxy>
22
23         <!-- For NO Versioning, REMOVE the /${project.version} from the <distFilesRoot>
24             property, below. PLEASE, NOTE: If your ${project.version} is a "-SNAPSHOT"
25             version, THIS will be used as your directory structure. If you do NOT want
26             this, simply remove the "-SNAPSHOT" from your <version> declaration at the
27             top of pom.xml -->
28         <distFilesRoot>/appl/${project.artifactId}/${project.version}</distFilesRoot>
29         <runAjscHome>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}</runAjscHome>
30
31         <!-- Port Selection. A value of 0 will allow for dynamic port selection.
32             For local testing, you may choose to hardcode this value to something like
33             8080 -->
34         <serverPort>0</serverPort>
35         <sslport>9520</sslport>
36
37         <testRouteOffer>workstation</testRouteOffer>
38         <testEnv>DEV</testEnv>
39         <checkstyle.config.location>google_checks.xml</checkstyle.config.location>
40
41         <sonar.language>java</sonar.language>
42         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
43         <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports
44         </sonar.surefire.reportsPath>
45         <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec
46         </sonar.jacoco.reportPath>
47         <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
48         <sonar.projectVersion>${project.version}</sonar.projectVersion>
49     </properties>
50
51     <dependencies>
52
53         <dependency>
54             <groupId>dom4j</groupId>
55             <artifactId>dom4j</artifactId>
56             <version>1.6.1</version>
57             <scope>provided</scope>
58         </dependency>
59
60         <dependency>
61             <groupId>com.att.aft</groupId>
62             <artifactId>dme2</artifactId>
63             <version>3.1.200</version>
64             <scope>provided</scope>
65         </dependency>
66         <dependency>
67             <groupId>commons-io</groupId>
68             <artifactId>commons-io</artifactId>
69             <version>2.4</version>
70         </dependency>
71
72         <dependency>
73             <groupId>com.google.code.gson</groupId>
74             <artifactId>gson</artifactId>
75             <version>2.6.2</version>
76         </dependency>
77
78         <!-- Common logging framework -->
79         <dependency>
80           <groupId>org.openecomp.aai.logging-service</groupId>
81           <artifactId>common-logging</artifactId>
82           <version>1.0.0</version>
83         </dependency>
84
85         <dependency>
86           <groupId>ch.qos.logback</groupId>
87           <artifactId>logback-core</artifactId>
88           <version>1.1.7</version>
89         </dependency>
90
91         <dependency>
92           <groupId>org.onap.aai.aai-common</groupId>
93           <artifactId>aai-schema</artifactId>
94           <version>1.1.0-SNAPSHOT</version>
95         </dependency>
96         <dependency>
97             <groupId>org.onap.aai.aai-common</groupId>
98             <artifactId>aai-utils</artifactId>
99             <version>1.1.0-SNAPSHOT</version>
100         </dependency>
101         <dependency>
102             <groupId>org.onap.aai.aai-common</groupId>
103             <artifactId>aai-core</artifactId>
104             <version>1.1.0-SNAPSHOT</version>
105             <exclusions>
106                 <exclusion>
107                     <groupId>*</groupId>
108                     <artifactId>*</artifactId>
109                 </exclusion>
110             </exclusions>
111         </dependency>
112
113         <dependency>
114           <groupId>org.onap.aai.aai-common</groupId>
115           <artifactId>aai-auth</artifactId>
116           <version>1.1.0-SNAPSHOT</version>
117         </dependency>
118
119         <dependency>
120           <groupId>org.eclipse.persistence</groupId>
121             <artifactId>eclipselink</artifactId>
122             <version>2.6.2</version>
123         </dependency>
124
125         <!-- Champ graph database library. -->
126         <dependency>
127             <groupId>org.openecomp.aai</groupId>
128             <artifactId>champ</artifactId> 
129             <version>1.1.0-SNAPSHOT</version>
130             <scope>compile</scope>
131             <exclusions>
132                 <exclusion>
133                     <groupId>org.apache.hbase</groupId>
134                     <artifactId>hbase-client</artifactId>
135                 </exclusion>
136             </exclusions>
137         </dependency>
138
139         <dependency>
140             <groupId>com.jayway.jsonpath</groupId>
141             <artifactId>json-path</artifactId>
142             <version>2.2.0</version>
143         </dependency>
144                 
145                 <!-- AAI-CORE specific dependencies -->
146                 <dependency>
147                 <groupId>org.apache.tinkerpop</groupId>
148                 <artifactId>gremlin-core</artifactId> 
149                 <version>3.2.3</version>
150                 <scope>provided</scope>
151                 <exclusions>
152                     <exclusion>
153                         <groupId>org.slf4j</groupId>
154                         <artifactId>slf4j-log4j12</artifactId>
155                     </exclusion>
156                     <exclusion>
157                         <groupId>org.slf4j</groupId>
158                         <artifactId>jcl-over-slf4j</artifactId>
159                     </exclusion>
160                 </exclusions>
161      </dependency>
162
163        <dependency>
164             <groupId>org.apache.tinkerpop</groupId>
165             <artifactId>tinkergraph-gremlin</artifactId>
166             <version>3.2.3</version>
167             <scope>provided</scope>
168         </dependency>
169
170         <dependency>
171             <groupId>org.json</groupId>
172             <artifactId>json</artifactId>
173             <version>20131018</version>
174         </dependency>
175         <dependency>
176             <groupId>junit</groupId>
177             <artifactId>junit</artifactId>
178         </dependency>
179
180     </dependencies>
181
182
183     <repositories>
184       <repository>
185         <id>central</id>
186         <name>Maven 2 repository 2</name>
187         <url>http://repo2.maven.org/maven2/</url>
188       </repository>
189       <repository>
190         <id>ecomp-releases</id>
191         <name>ECOMP Release Repository</name>
192         <url>${nexusproxy}/content/repositories/releases/</url>
193       </repository>
194       <repository>
195         <id>ecomp-snapshots</id>
196         <name>ECOMP Snapshot Repository</name>
197         <url>${nexusproxy}/content/repositories/snapshots/</url>
198       </repository>
199       <repository>
200         <id>ecomp-staging</id>
201         <name>ECOMP Staging Repository</name>
202         <url>${nexusproxy}/content/repositories/staging/</url>
203       </repository>
204
205     </repositories>
206
207     <build>
208         <plugins>
209             <plugin>
210                 <groupId>org.apache.maven.plugins</groupId>
211                 <artifactId>maven-resources-plugin</artifactId>
212                 <version>2.7</version>
213                 <executions>
214                     <execution>
215                         <id>copy-docker-file</id>
216                         <phase>package</phase>
217                         <goals>
218                             <goal>copy-resources</goal>
219                         </goals>
220                         <configuration>
221                             <outputDirectory>target</outputDirectory>
222                             <overwrite>true</overwrite>
223                             <resources>
224                                 <resource>
225                                     <directory>${basedir}/src/main/docker</directory>
226                                     <filtering>true</filtering>
227                                     <includes>
228                                         <include>**/*</include>
229                                     </includes>
230                                 </resource>
231                                 <resource>
232                                   <directory>${basedir}/src/main/bin/</directory>
233                                 </resource>
234                             </resources>
235                         </configuration>
236                     </execution>
237                 </executions>
238             </plugin>
239
240             <plugin>
241               <groupId>com.spotify</groupId>
242               <artifactId>docker-maven-plugin</artifactId>
243               <version>0.4.11</version>
244               <configuration>
245                 <verbose>true</verbose>
246                 <serverId>docker-hub</serverId>
247                 <imageName>${docker.push.registry}/openecomp/${project.artifactId}</imageName>
248                 <dockerDirectory>${docker.location}</dockerDirectory>
249                 <imageTags>
250                   <imageTag>latest</imageTag>
251                 </imageTags>
252                 <forceTags>true</forceTags>
253               </configuration>
254             </plugin>
255
256             <!-- license plugin -->
257             <plugin>
258                 <groupId>com.mycila</groupId>
259                 <artifactId>license-maven-plugin</artifactId>
260                 <version>3.0</version>
261                 <configuration>
262                     <header>License.txt</header>
263                     <includes>
264                         <include>src/main/java/**</include>
265                     </includes>
266                 </configuration>
267                 <executions>
268                     <execution>
269                         <goals>
270                             <goal>format</goal>
271                         </goals>
272                         <phase>process-sources</phase>
273                     </execution>
274                 </executions>
275             </plugin>
276
277             <plugin>
278                 <groupId>org.apache.maven.plugins</groupId>
279                 <artifactId>maven-site-plugin</artifactId>
280                 <version>3.3</version>
281                 <configuration>
282                     <reportPlugins>
283                         <plugin>
284                             <groupId>org.apache.maven.plugins</groupId>
285                             <artifactId>maven-checkstyle-plugin</artifactId>
286                             <version>2.17</version>
287                             <reportSets>
288                                 <reportSet>
289                                     <reports>
290                                       <report>checkstyle</report>
291                                     </reports>
292                                 </reportSet>
293                             </reportSets>
294                         </plugin>
295                     </reportPlugins>
296                 </configuration>
297             </plugin>
298
299             <plugin>
300               <groupId>org.apache.maven.plugins</groupId>
301               <artifactId>maven-deploy-plugin</artifactId>
302               <configuration>
303                 <skip>true</skip>
304               </configuration>
305             </plugin>
306
307             <plugin>
308               <groupId>org.codehaus.mojo</groupId>
309               <artifactId>sonar-maven-plugin</artifactId>
310               <version>3.2</version>
311             </plugin>
312
313             <plugin>
314               <groupId>org.jacoco</groupId>
315               <artifactId>jacoco-maven-plugin</artifactId>
316               <version>0.7.7.201606060606</version>
317               <configuration>
318                 <dumpOnExit>true</dumpOnExit>
319               </configuration>
320               <executions>
321                 <execution>
322                   <id>jacoco-initialize-unit-tests</id>
323                   <goals>
324                     <goal>prepare-agent</goal>
325                   </goals>
326                   <configuration>
327                     <destFile>${project.build.directory}/coverage-reports/jacoco.exec
328                     </destFile>
329                     <!-- <append>true</append> -->
330                   </configuration>
331                 </execution>
332               </executions>
333             </plugin>
334         </plugins>
335     </build>
336
337     <profiles>
338         <profile>
339             <id>runAjsc</id>
340             <build>
341                 <defaultGoal>initialize</defaultGoal>
342                 <plugins>
343                     <plugin>
344                         <groupId>org.codehaus.mojo</groupId>
345                         <artifactId>exec-maven-plugin</artifactId>
346                         <version>1.3.2</version>
347                         <executions>
348                             <execution>
349                                 <phase>initialize</phase>
350                                 <goals>
351                                     <goal>java</goal>
352                                 </goals>
353                                 <configuration>
354                                     <includeProjectDependencies>false</includeProjectDependencies>
355                                     <includePluginDependencies>true</includePluginDependencies>
356                                     <executable>java</executable>
357                                     <mainClass>com.att.ajsc.runner.Runner</mainClass>
358                                     <executableDependency>
359                                         <groupId>com.att.ajsc</groupId>
360                                         <artifactId>ajsc-runner</artifactId>
361                                     </executableDependency>
362                                     <additionalClasspathElements>
363                                         <additionalClasspathElement>
364                                             ${basedir}/ajsc-shared-config/etc
365                                         </additionalClasspathElement>
366                                     </additionalClasspathElements>
367
368                                     <environmentVariables>
369                                         <AJSC_HOME>${runAjscHome}</AJSC_HOME>
370                                     </environmentVariables>
371
372                                     <!-- Main AJSC System Properties below (necessary for proper startup) -->
373                                     <systemProperties>
374                                         <systemProperty>
375                                             <key>AJSC_HOME</key>
376                                             <value>${runAjscHome}</value>
377                                         </systemProperty>
378                                         <systemProperty>
379                                             <key>CONFIG_HOME</key>
380                                             <value>${basedir}/appconfig-local/</value>
381                                         </systemProperty>
382                                         <systemProperty>
383                                             <key>AJSC_CONF_HOME</key>
384                                             <value>${basedir}/bundleconfig-local</value>
385                                         </systemProperty>
386                                         <systemProperty>
387                                             <key>logback.configurationFile</key>
388                                             <value>${basedir}/ajsc-shared-config/etc/logback.xml
389                                             </value>
390                                         </systemProperty>
391                                         <systemProperty>
392                                             <key>AJSC_SHARED_CONFIG</key>
393                                             <value>${basedir}/ajsc-shared-config</value>
394                                         </systemProperty>
395
396                                         <sysproperty>
397                                             <key>AJSC_EXTERNAL_LIB_FOLDERS</key>
398                                             <value>${basedir}/target/commonLibs</value>
399                                         </sysproperty>
400                                         <sysproperty>
401                                             <key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
402                                             <value>${basedir}/ajsc-shared-config/etc</value>
403                                         </sysproperty>
404
405                                         <systemProperty>
406                                             <key>AJSC_SERVICE_NAMESPACE</key>
407                                             <value>${module.ajsc.namespace.name}</value>
408                                         </systemProperty>
409                                         <systemProperty>
410                                             <key>AJSC_SERVICE_VERSION</key>
411                                             <value>${module.ajsc.namespace.version}</value>
412                                         </systemProperty>
413                                         <systemProperty>
414                                             <key>SOACLOUD_SERVICE_VERSION</key>
415                                             <value>${project.version}</value>
416                                         </systemProperty>
417                                         <systemProperty>
418                                             <key>server.port</key>
419                                             <value>${serverPort}</value>
420                                         </systemProperty>
421                                     </systemProperties>
422
423                                     <!-- Command Line Arguments to add to the java command. Here, you
424                                         can specify the port as well as the Context you want your service to run
425                                         in. Use context=/ to run in an unnamed Context (Root Context). The default
426                                         configuration of the AJSC is to run under the / Context. Setting the port
427                                         here can aid during the development phase of your service. However, you can
428                                         leave this argument out entirely, and the AJSC will default to using an Ephemeral
429                                         port. -->
430                                     <arguments>
431                                         <argument>context=/</argument>
432                                         <argument>port=${serverPort}</argument>
433                                         <argument>sslport=${sslport}</argument>
434                                     </arguments>
435                                 </configuration>
436                             </execution>
437                         </executions>
438                         <configuration>
439                             <executable>java</executable>
440                         </configuration>
441                         <dependencies>
442                             <dependency>
443                                 <groupId>com.att.ajsc</groupId>
444                                 <artifactId>ajsc-runner</artifactId>
445                                 <version>${ajscRuntimeVersion}</version>
446                             </dependency>
447                         </dependencies>
448                     </plugin>
449                 </plugins>
450             </build>
451         </profile>
452     </profiles>
453
454     <dependencyManagement>
455         <dependencies>
456             <dependency>
457                 <groupId>org.apache.httpcomponents</groupId>
458                 <artifactId>httpclient</artifactId>
459                 <version>4.5</version>
460             </dependency>
461             <dependency>
462                 <groupId>org.apache.httpcomponents</groupId>
463                 <artifactId>httpcore</artifactId>
464                 <version>4.4.1</version>
465             </dependency>
466             <dependency>
467                 <groupId>org.json</groupId>
468                 <artifactId>json</artifactId>
469                 <version>20131018</version>
470             </dependency>
471         </dependencies>
472     </dependencyManagement>
473
474     <distributionManagement>
475       <repository>
476         <id>ecomp-releases</id>
477         <name>ECOMP Release Repository</name>
478         <url>${nexusproxy}/content/repositories/releases/</url>
479       </repository>
480       <snapshotRepository>
481         <id>ecomp-snapshots</id>
482         <name>ECOMP Snapshot Repository</name>
483         <url>${nexusproxy}/content/repositories/snapshots/</url>
484       </snapshotRepository>
485       <site>
486         <id>ecomp-javadoc</id>
487         <url>dav:https://ecomp-nexus:8443/repository/aai/gizmo-javadoc/${project.version}</url>
488       </site>
489     </distributionManagement>
490 </project>