Require explicit annotation dependencies
[odlparent.git] / features-test / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4  Copyright © 2014, 2017 Cisco Systems, Inc. and others.  All rights reserved.
5
6  This program and the accompanying materials are made available under the
7  terms of the Eclipse Public License v1.0 which accompanies this distribution,
8  and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
11     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
12
13     <parent>
14         <groupId>org.opendaylight.odlparent</groupId>
15         <artifactId>bundle-parent</artifactId>
16         <version>13.0.0-SNAPSHOT</version>
17         <relativePath>../bundle-parent</relativePath>
18     </parent>
19
20     <modelVersion>4.0.0</modelVersion>
21     <artifactId>features-test</artifactId>
22     <packaging>bundle</packaging>
23     <name>ODL :: odlparent :: ${project.artifactId}</name>
24
25     <properties>
26         <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
27     </properties>
28
29     <dependencies>
30         <!-- Dependencies for pax exam karaf container -->
31         <dependency>
32             <groupId>org.ops4j.pax.exam</groupId>
33             <artifactId>pax-exam-container-karaf</artifactId>
34             <scope>compile</scope>
35         </dependency>
36         <dependency>
37             <groupId>org.ops4j.pax.exam</groupId>
38             <artifactId>pax-exam-junit4</artifactId>
39             <scope>compile</scope>
40         </dependency>
41         <dependency>
42             <groupId>org.ops4j.pax.exam</groupId>
43             <artifactId>pax-exam</artifactId>
44             <scope>compile</scope>
45         </dependency>
46         <dependency>
47             <groupId>org.ops4j.pax.url</groupId>
48             <artifactId>pax-url-aether</artifactId>
49             <scope>compile</scope>
50         </dependency>
51         <dependency>
52             <groupId>org.osgi</groupId>
53             <!-- required due to https://jira.opendaylight.org/browse/ODLPARENT-136 -->
54             <artifactId>org.osgi.service.resolver</artifactId>
55         </dependency>
56         <dependency>
57             <groupId>org.apache.karaf.features</groupId>
58             <artifactId>standard</artifactId>
59             <version>${karaf.version}</version>
60             <classifier>features</classifier>
61             <type>xml</type>
62         </dependency>
63         <dependency>
64             <groupId>junit</groupId>
65             <artifactId>junit</artifactId>
66             <scope>compile</scope>
67         </dependency>
68         <dependency>
69             <groupId>org.apache.karaf.deployer</groupId>
70             <artifactId>org.apache.karaf.deployer.blueprint</artifactId>
71             <version>${karaf.version}</version>
72             <scope>compile</scope>
73         </dependency>
74         <dependency>
75             <groupId>org.apache.karaf.deployer</groupId>
76             <artifactId>org.apache.karaf.deployer.features</artifactId>
77             <version>${karaf.version}</version>
78             <scope>compile</scope>
79         </dependency>
80         <dependency>
81             <groupId>org.ops4j.pax.url</groupId>
82             <artifactId>pax-url-wrap</artifactId>
83             <scope>compile</scope>
84         </dependency>
85         <dependency>
86             <groupId>org.slf4j</groupId>
87             <artifactId>slf4j-api</artifactId>
88             <scope>compile</scope>
89         </dependency>
90         <dependency>
91             <groupId>com.guicedee.services</groupId>
92             <artifactId>javax.inject</artifactId>
93             <scope>compile</scope>
94         </dependency>
95         <dependency>
96             <groupId>org.osgi</groupId>
97             <artifactId>org.osgi.framework</artifactId>
98             <scope>compile</scope>
99         </dependency>
100         <dependency>
101             <groupId>org.eclipse.jdt</groupId>
102             <artifactId>org.eclipse.jdt.annotation</artifactId>
103             <optional>true</optional>
104         </dependency>
105         <dependency>
106             <groupId>org.opendaylight.odlparent</groupId>
107             <artifactId>opendaylight-karaf-empty</artifactId>
108             <type>zip</type>
109         </dependency>
110         <!-- BEWARE of adding additional dependencies here...
111              It will cause weird issues e.g. in integration/distribution/features/repos/distribution -->
112         <dependency>
113           <groupId>org.opendaylight.odlparent</groupId>
114           <artifactId>karaf-util</artifactId>
115           <version>${project.version}</version>
116         </dependency>
117         <dependency>
118             <groupId>${project.groupId}</groupId>
119             <artifactId>bundles4-test</artifactId>
120             <version>${project.version}</version>
121             <scope>provided</scope>
122         </dependency>
123         <dependency>
124             <groupId>org.apache.karaf.bundle</groupId>
125             <artifactId>org.apache.karaf.bundle.core</artifactId>
126             <version>${karaf.version}</version>
127             <scope>provided</scope>
128         </dependency>
129         <dependency>
130             <groupId>com.google.guava</groupId>
131             <artifactId>guava</artifactId>
132             <scope>compile</scope>
133         </dependency>
134
135         <!-- The following, which are just transitive dependencies of bundles4-test,
136              have to be repeated here so that the Embed-Dependency below for maven-bundle-plugin works: -->
137         <dependency>
138             <groupId>org.hamcrest</groupId>
139             <artifactId>hamcrest</artifactId>
140             <scope>provided</scope>
141         </dependency>
142         <dependency>
143             <groupId>org.awaitility</groupId>
144             <artifactId>awaitility</artifactId>
145             <scope>provided</scope>
146             <exclusions>
147                 <exclusion>
148                     <groupId>cglib</groupId>
149                     <artifactId>cglib-nodep</artifactId>
150                 </exclusion>
151                 <exclusion>
152                     <groupId>org.objenesis</groupId>
153                     <artifactId>objenesis</artifactId>
154                 </exclusion>
155             </exclusions>
156         </dependency>
157     </dependencies>
158
159     <build>
160         <resources>
161             <resource>
162                 <directory>src/main/resources</directory>
163                 <filtering>true</filtering>
164             </resource>
165         </resources>
166         <plugins>
167             <plugin>
168                 <groupId>org.apache.felix</groupId>
169                 <artifactId>maven-bundle-plugin</artifactId>
170                 <configuration>
171                   <instructions>
172                     <Embed-Dependency>bundles4-test;inline=true,awaitility;inline=true,hamcrest;inline=true</Embed-Dependency>
173                     <!-- same as in bundles4-test/pom.xml: -->
174                     <Import-Package>!net.sf.cglib.proxy,!org.objenesis,*</Import-Package>
175                   </instructions>
176                 </configuration>
177             </plugin>
178             <plugin>
179                 <artifactId>maven-checkstyle-plugin</artifactId>
180                 <executions>
181                     <execution>
182                         <id>check-license</id>
183                         <configuration>
184                             <excludes>
185                                 <!-- Skip Apache Licensed files -->
186                                 org/opendaylight/odlparent/featuretest/CustomBundleUrlStreamHandlerFactory.java
187                             </excludes>
188                         </configuration>
189                     </execution>
190                 </executions>
191             </plugin>
192         </plugins>
193     </build>
194
195 </project>