blob: 499cf3cd147dc2312819722b613f48107431be2c [file] [log] [blame]
Carsten Ziegelerb61fe0e2008-01-03 09:24:12 +00001<!--
2 Licensed to the Apache Software Foundation (ASF) under one
3 or more contributor license agreements. See the NOTICE file
4 distributed with this work for additional information
5 regarding copyright ownership. The ASF licenses this file
6 to you under the Apache License, Version 2.0 (the
7 "License"); you may not use this file except in compliance
8 with the License. You may obtain a copy of the License at
9
10 http://www.apache.org/licenses/LICENSE-2.0
11
12 Unless required by applicable law or agreed to in writing,
13 software distributed under the License is distributed on an
14 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 KIND, either express or implied. See the License for the
16 specific language governing permissions and limitations
17 under the License.
18-->
Carsten Ziegeler4fec0962008-01-11 16:13:31 +000019<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/maven-v4_0_0.xsd">
Karl Pauls589e2b32007-07-11 18:29:29 +000020 <parent>
21 <groupId>org.apache.felix</groupId>
Felix Meschbergereda237f2009-04-27 13:12:37 +000022 <artifactId>felix-parent</artifactId>
Felix Meschberger87efadb2011-10-11 18:10:07 +000023 <version>2.1</version>
Felix Meschberger6ac3b022012-03-08 04:37:56 +000024 <relativePath/>
Karl Pauls589e2b32007-07-11 18:29:29 +000025 </parent>
26 <modelVersion>4.0.0</modelVersion>
27 <packaging>bundle</packaging>
28 <name>Apache Felix Declarative Services</name>
29 <description>
Felix Meschbergerc3de8e62010-05-28 20:28:18 +000030 Implementation of the Declarative Services specification 1.1
Karl Pauls589e2b32007-07-11 18:29:29 +000031 </description>
32 <artifactId>org.apache.felix.scr</artifactId>
Felix Meschberger7225c132010-08-10 12:19:28 +000033 <version>1.6.1-SNAPSHOT</version>
Felix Meschbergera2eafef2009-04-29 08:46:06 +000034 <scm>
Felix Meschberger7225c132010-08-10 12:19:28 +000035 <connection>scm:svn:https://svn.apache.org/repos/asf/felix/trunk/scr</connection>
36 <developerConnection>scm:svn:https://svn.apache.org/repos/asf/felix/trunk/scr</developerConnection>
37 <url>scm:svn:https://svn.apache.org/repos/asf/felix/trunk/scr</url>
Felix Meschbergera2eafef2009-04-29 08:46:06 +000038 </scm>
Felix Meschbergerc71d0e72009-10-12 07:16:08 +000039
40 <!--
41 A Note on Testing
42 =================
43
44 This project contains two kinds of tests: regular unit tests running
45 in the test phase and integration tests based on PAX Exam running
46 in the integration-test phase.
47
48 Basically the complete project is build using Java 1.3 source and target
49 compatibility (as inherited from the parent pom). The exception are the
50 unit tests in the "integration" packages. These have to be compiled with
51 Java 5 source and target compatibility because the employ annotations
52 and generics.
53
54 For running the integration tests from the console using Maven nothing
55 special has to be done as the tests run automatically. To run the tests
56 in your IDE, the project has to be built to the "package" phase with
57 the profile "ide" enabled:
58
59 $ mvn -Pide clean package
60
61 This creates the scr.jar file in the target folder, which is used by
62 the integration tests when run from the IDE. Alternatively the
63 "project.bundle.file" system property may be set to the bundle JAR
64 in the IDE launcher.
65 -->
Felix Meschberger0d2db8e2009-10-12 07:25:39 +000066 <properties>
Felix Meschbergerb3f548d2009-10-12 08:11:27 +000067 <bundle.build.name>
68 ${basedir}/target
69 </bundle.build.name>
Felix Meschberger80fc0fc2009-10-12 07:51:50 +000070 <bundle.file.name>
Felix Meschbergerb3f548d2009-10-12 08:11:27 +000071 ${bundle.build.name}/${project.build.finalName}.jar
Felix Meschberger80fc0fc2009-10-12 07:51:50 +000072 </bundle.file.name>
Felix Meschberger0d2db8e2009-10-12 07:25:39 +000073 </properties>
74
Felix Meschbergerc71d0e72009-10-12 07:16:08 +000075
Karl Pauls589e2b32007-07-11 18:29:29 +000076 <dependencies>
77 <dependency>
Felix Meschberger21a301e2009-10-07 08:38:18 +000078 <groupId>org.osgi</groupId>
Karl Pauls589e2b32007-07-11 18:29:29 +000079 <artifactId>org.osgi.core</artifactId>
David Jencks98ecf7d2012-10-12 00:40:18 +000080 <version>4.3.0</version>
Felix Meschbergerc8dbf482009-10-11 08:18:18 +000081 <scope>provided</scope>
Karl Pauls589e2b32007-07-11 18:29:29 +000082 </dependency>
83 <dependency>
Felix Meschberger21a301e2009-10-07 08:38:18 +000084 <groupId>org.osgi</groupId>
Karl Pauls589e2b32007-07-11 18:29:29 +000085 <artifactId>org.osgi.compendium</artifactId>
David Jencks121dc422012-08-09 16:18:55 +000086 <version>4.3.0</version>
Felix Meschbergerc8dbf482009-10-11 08:18:18 +000087 <scope>provided</scope>
Karl Pauls589e2b32007-07-11 18:29:29 +000088 </dependency>
89 <dependency>
Felix Meschberger28082252011-04-06 15:02:42 +000090 <groupId>${project.groupId}</groupId>
Felix Meschbergerd25a63d2007-11-23 13:02:49 +000091 <artifactId>org.apache.felix.shell</artifactId>
92 <version>1.0.0</version>
Felix Meschbergerc8dbf482009-10-11 08:18:18 +000093 <scope>provided</scope>
Felix Meschbergerb3f548d2009-10-12 08:11:27 +000094 <exclusions>
95 <exclusion>
96 <groupId>org.apache.felix</groupId>
97 <artifactId>org.osgi.core</artifactId>
98 </exclusion>
99 </exclusions>
Felix Meschbergerd25a63d2007-11-23 13:02:49 +0000100 </dependency>
101 <dependency>
Felix Meschbergerab647de2010-12-23 18:13:24 +0000102 <groupId>org.apache.felix</groupId>
103 <artifactId>org.apache.felix.gogo.runtime</artifactId>
104 <version>0.6.1</version>
105 <scope>provided</scope>
106 </dependency>
107 <dependency>
Karl Pauls589e2b32007-07-11 18:29:29 +0000108 <groupId>net.sf.kxml</groupId>
109 <artifactId>kxml2</artifactId>
110 <version>2.2.2</version>
Felix Meschbergerc8dbf482009-10-11 08:18:18 +0000111 <scope>provided</scope>
Karl Pauls589e2b32007-07-11 18:29:29 +0000112 </dependency>
Felix Meschberger96c41932012-05-31 13:06:30 +0000113 <dependency>
David Jencksa91cfe32012-09-11 23:01:29 +0000114 <groupId>backport-util-concurrent</groupId>
115 <artifactId>backport-util-concurrent</artifactId>
116 <version>3.1</version>
Felix Meschberger96c41932012-05-31 13:06:30 +0000117 <scope>provided</scope>
118 </dependency>
David Jencksa91cfe32012-09-11 23:01:29 +0000119
Felix Meschberger8c64e852009-07-28 13:48:28 +0000120 <!-- Integration Testing with Pax Exam -->
121 <dependency>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000122 <groupId>org.ops4j.pax.exam</groupId>
123 <artifactId>pax-exam-container-forked</artifactId>
David Jencks32119e92012-10-19 06:52:50 +0000124 <version>2.4.0</version>
Felix Meschbergerc8dbf482009-10-11 08:18:18 +0000125 <scope>test</scope>
Felix Meschberger8c64e852009-07-28 13:48:28 +0000126 </dependency>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000127
Felix Meschberger8c64e852009-07-28 13:48:28 +0000128 <dependency>
129 <groupId>org.ops4j.pax.exam</groupId>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000130 <artifactId>pax-exam-junit4</artifactId>
David Jencks32119e92012-10-19 06:52:50 +0000131 <version>2.4.0</version>
Felix Meschberger8c64e852009-07-28 13:48:28 +0000132 <scope>test</scope>
133 </dependency>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000134
Felix Meschberger8c64e852009-07-28 13:48:28 +0000135 <dependency>
136 <groupId>org.ops4j.pax.exam</groupId>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000137 <artifactId>pax-exam-link-mvn</artifactId>
David Jencks32119e92012-10-19 06:52:50 +0000138 <version>2.4.0</version>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000139 <scope>test</scope>
140 </dependency>
141
142 <dependency>
143 <groupId>org.ops4j.pax.url</groupId>
144 <artifactId>pax-url-aether</artifactId>
145 <version>1.4.0.RC1</version>
Felix Meschberger8c64e852009-07-28 13:48:28 +0000146 <scope>test</scope>
147 </dependency>
148 <dependency>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000149 <groupId>org.ops4j.pax.url</groupId>
150 <artifactId>pax-url-wrap</artifactId>
151 <version>1.4.0.RC1</version>
Felix Meschberger8c64e852009-07-28 13:48:28 +0000152 <scope>test</scope>
153 </dependency>
154 <dependency>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000155 <groupId>org.ops4j.pax.logging</groupId>
156 <artifactId>pax-logging-api</artifactId>
157 <version>1.6.3</version>
158 <scope>test</scope>
159 </dependency>
160 <dependency>
161 <groupId>org.ops4j.pax.logging</groupId>
162 <artifactId>pax-logging-service</artifactId>
163 <version>1.6.3</version>
164 <scope>test</scope>
165 </dependency>
166
167 <dependency>
168 <groupId>ch.qos.logback</groupId>
169 <artifactId>logback-core</artifactId>
170 <version>0.9.29</version>
171 <scope>test</scope>
172 </dependency>
173
174 <dependency>
175 <groupId>ch.qos.logback</groupId>
176 <artifactId>logback-classic</artifactId>
177 <version>0.9.29</version>
178 <scope>test</scope>
179 </dependency>
180 <dependency>
181 <groupId>org.apache.geronimo.specs</groupId>
182 <artifactId>geronimo-atinject_1.0_spec</artifactId>
183 <version>1.0</version>
184 <scope>test</scope>
185 </dependency>
186 <dependency>
David Jencksecb06252012-06-05 01:02:17 +0000187 <groupId>org.apache.servicemix.bundles</groupId>
188 <artifactId>org.apache.servicemix.bundles.junit</artifactId>
David Jencks32119e92012-10-19 06:52:50 +0000189 <version>4.9_2</version>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000190 <scope>test</scope>
191 </dependency>
192 <dependency>
193 <groupId>org.ops4j.base</groupId>
194 <artifactId>ops4j-base-lang</artifactId>
195 <version>1.2.3</version>
196 <scope>provided</scope>
197 </dependency>
198 <dependency>
199 <groupId>org.ops4j.base</groupId>
200 <artifactId>ops4j-base-net</artifactId>
201 <version>1.2.3</version>
202 <scope>provided</scope>
203 </dependency>
204 <dependency>
205 <groupId>org.ops4j.pax.tinybundles</groupId>
206 <artifactId>tinybundles</artifactId>
207 <version>1.0.0</version>
Felix Meschberger8c64e852009-07-28 13:48:28 +0000208 <scope>test</scope>
209 </dependency>
Karl Pauls589e2b32007-07-11 18:29:29 +0000210 </dependencies>
211 <build>
Felix Meschbergerb3f548d2009-10-12 08:11:27 +0000212 <directory>${bundle.build.name}</directory>
Karl Pauls589e2b32007-07-11 18:29:29 +0000213 <plugins>
214 <plugin>
215 <groupId>org.apache.felix</groupId>
216 <artifactId>maven-bundle-plugin</artifactId>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000217 <version>2.3.7</version>
Karl Pauls589e2b32007-07-11 18:29:29 +0000218 <extensions>true</extensions>
219 <configuration>
220 <instructions>
Felix Meschbergere5b69af2011-02-04 06:24:05 +0000221 <Bundle-Category>osgi</Bundle-Category>
Karl Pauls589e2b32007-07-11 18:29:29 +0000222 <Bundle-SymbolicName>
Felix Meschberger28082252011-04-06 15:02:42 +0000223 ${project.artifactId}
Karl Pauls589e2b32007-07-11 18:29:29 +0000224 </Bundle-SymbolicName>
Carsten Ziegeler90f0b9f2008-04-17 06:33:59 +0000225 <Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
Felix Meschberger0062b3c2009-10-11 12:25:14 +0000226 <Bundle-DocURL>
227 http://felix.apache.org/site/apache-felix-service-component-runtime.html
228 </Bundle-DocURL>
Karl Pauls589e2b32007-07-11 18:29:29 +0000229 <Bundle-Activator>
Felix Meschbergerd25a63d2007-11-23 13:02:49 +0000230 org.apache.felix.scr.impl.Activator
Karl Pauls589e2b32007-07-11 18:29:29 +0000231 </Bundle-Activator>
232 <Export-Package>
Felix Meschberger3144a1e2012-05-17 13:39:34 +0000233 org.apache.felix.scr;version=1.7,
Felix Meschberger3ce511d2012-03-08 05:55:06 +0000234 org.apache.felix.scr.component;version=1.0;
235 mandatory:="status"; status="provisional",
Felix Meschberger21a301e2009-10-07 08:38:18 +0000236 org.osgi.service.component
Karl Pauls589e2b32007-07-11 18:29:29 +0000237 </Export-Package>
238 <Private-Package>
Felix Meschberger9aaf7c42009-07-09 12:34:12 +0000239 org.apache.felix.scr.impl.*,
240 org.osgi.util.tracker
Karl Pauls589e2b32007-07-11 18:29:29 +0000241 </Private-Package>
Felix Meschbergerd25a63d2007-11-23 13:02:49 +0000242 <Import-Package>
Felix Meschberger21a301e2009-10-07 08:38:18 +0000243 <!--
Felix Meschbergerab647de2010-12-23 18:13:24 +0000244 optional import for Gogo annotations
245 -->
246 org.apache.felix.service.command;resolution:=optional,
247
248 <!--
Felix Meschberger21a301e2009-10-07 08:38:18 +0000249 The Felix Shell support is optional
250 -->
Felix Meschberger3e0aa9a2011-11-17 08:24:49 +0000251 org.apache.felix.shell;provide:=true;resolution:=optional,
Felix Meschberger21a301e2009-10-07 08:38:18 +0000252
253 <!--
Felix Meschberger470ff262009-10-29 13:48:37 +0000254 Framework version 1.4 (from R4.1) is required
255 because we depend on ServiceReference being
256 Comparable and Bundle.getBundleContext method
257 being available.
Felix Meschberger21a301e2009-10-07 08:38:18 +0000258 -->
Felix Meschberger470ff262009-10-29 13:48:37 +0000259 org.osgi.framework;version="[1.4,2)",
Felix Meschberger21a301e2009-10-07 08:38:18 +0000260
261 <!--
Felix Meschberger9c29a382009-10-29 12:28:50 +0000262 LogService is optional but if present the
263 R4.0 version 1.3 is sufficient.
264 -->
265 org.osgi.service.log;version="[1.3,2)";resolution:=optional,
266
267 <!--
Felix Meschbergerb8646ff2010-08-05 13:26:31 +0000268 PackageAdmin is used to find reference types if
Felix Meschberger3e0aa9a2011-11-17 08:24:49 +0000269 the component's bundle does not import it.
270 See BindMethod.getParameterClass(Class) for details.
271 R4.0 version 1.2 is sufficient.
Felix Meschbergerb8646ff2010-08-05 13:26:31 +0000272 -->
273 org.osgi.service.packageadmin;version="[1.2,2)";resolution:=optional,
274
275 <!--
Felix Meschbergera16f9662009-10-29 11:05:31 +0000276 SCR API is required (we also export it) and must
Felix Meschberger3e0aa9a2011-11-17 08:24:49 +0000277 be of the same minor version as we export, because
278 we implement that exact version. This import is
279 only used if the framework decides to wire the
Felix Meschbergeraaa78dc2012-09-02 23:39:15 +0000280 bundle to another API provider.
281 (version is automatically deduced from export)
Felix Meschbergera16f9662009-10-29 11:05:31 +0000282 -->
Felix Meschbergeraaa78dc2012-09-02 23:39:15 +0000283 org.osgi.service.component;provide:=true,
Felix Meschberger3e0aa9a2011-11-17 08:24:49 +0000284
285 <!--
286 SCR Admin API is required (we also export it) and
287 must be of the same minor version as we export,
288 because we implement that exact version. This
289 import is only used if the framework decides to
290 wire the bundle to another API provider.
291 -->
292 org.apache.felix.scr;provide:=true
Felix Meschbergerd25a63d2007-11-23 13:02:49 +0000293 </Import-Package>
Felix Meschbergercf317b62011-02-04 10:50:18 +0000294 <DynamicImport-Package>
295 <!--
296 Configuration Admin version 1.2 (from R4.0) is enough
297 -->
298 org.osgi.service.cm;version="[1.2,2)",
299
300 <!--
301 Metatype is optional and if it is
302 present, version 1.1 (from R4.1) is enough
303 -->
304 org.osgi.service.metatype;version="[1.1,2)"
305 </DynamicImport-Package>
Felix Meschberger9aaf7c42009-07-09 12:34:12 +0000306 <Embed-Dependency>
Felix Meschberger96c41932012-05-31 13:06:30 +0000307 kxml2;inline=org/kxml2/io/KXmlParser.class|org/xmlpull/v1/XmlPull**,
David Jencksa91cfe32012-09-11 23:01:29 +0000308 backport-util-concurrent;inline=edu/emory/mathcs/backport/java/util/concurrent/TimeUnit.class
309 |edu/emory/mathcs/backport/java/util/concurrent/TimeUnit*.class
David Jencks83f7e302012-10-25 18:00:20 +0000310 |edu/emory/mathcs/backport/java/util/concurrent/locks/ReentrantLock.class
311 |edu/emory/mathcs/backport/java/util/concurrent/locks/ReentrantLock*.class
David Jencksa91cfe32012-09-11 23:01:29 +0000312 |edu/emory/mathcs/backport/java/util/concurrent/locks/ReadWriteLock.class
313 |edu/emory/mathcs/backport/java/util/concurrent/locks/Lock.class
314 |edu/emory/mathcs/backport/java/util/concurrent/locks/Condition.class
315 |edu/emory/mathcs/backport/java/util/concurrent/locks/CondVar.class
316 |edu/emory/mathcs/backport/java/util/concurrent/locks/CondVar*.class
317 |edu/emory/mathcs/backport/java/util/concurrent/helpers/NanoTimer.class
318 |edu/emory/mathcs/backport/java/util/Arrays.class
319 |edu/emory/mathcs/backport/java/util/concurrent/helpers/Utils.class
320 |edu/emory/mathcs/backport/java/util/concurrent/helpers/Utils*1.class
321 |edu/emory/mathcs/backport/java/util/concurrent/helpers/Utils*MillisProvider.class
322 |edu/emory/mathcs/backport/java/util/concurrent/atomic/AtomicReference.class
Felix Meschberger9aaf7c42009-07-09 12:34:12 +0000323 </Embed-Dependency>
Karl Pauls589e2b32007-07-11 18:29:29 +0000324 </instructions>
325 </configuration>
326 </plugin>
Felix Meschberger8c64e852009-07-28 13:48:28 +0000327
328 <!--
Felix Meschberger20637402012-05-31 13:48:16 +0000329 Ensure not using too recent Java API
330 - for now touch base on Java 1.4
331 - Ignore some known Java 5 classes (used in JLock)
332 -->
David Jencks98ecf7d2012-10-12 00:40:18 +0000333<!--
Felix Meschberger20637402012-05-31 13:48:16 +0000334 <plugin>
335 <groupId>org.codehaus.mojo</groupId>
336 <artifactId>animal-sniffer-maven-plugin</artifactId>
337 <version>1.7</version>
338 <configuration>
339 <signature>
340 <groupId>org.codehaus.mojo.signature</groupId>
341 <artifactId>java14</artifactId>
342 <version>1.0</version>
343 </signature>
344 <ignores>
David Jencksfada1c92012-08-09 16:18:22 +0000345 <ignore>java.util.concurrent.atomic.AtomicReference</ignore>
David Jencks83f7e302012-10-25 18:00:20 +0000346 <ignore>java.util.concurrent.locks.ReentrantLock</ignore>
Felix Meschberger20637402012-05-31 13:48:16 +0000347 <ignore>java.util.concurrent.TimeUnit</ignore>
David Jencks248648d2012-08-09 16:18:49 +0000348 <ignore>java.lang.management.ManagementFactory</ignore>
349 <ignore>java.lang.management.ThreadInfo</ignore>
350 <ignore>java.lang.management.ThreadMXBean</ignore>
Felix Meschberger20637402012-05-31 13:48:16 +0000351 </ignores>
352 </configuration>
353 <executions>
354 <execution>
355 <phase>test</phase>
356 <goals>
357 <goal>check</goal>
358 </goals>
359 </execution>
360 </executions>
361 </plugin>
David Jencks98ecf7d2012-10-12 00:40:18 +0000362-->
Felix Meschberger20637402012-05-31 13:48:16 +0000363
364 <!--
Felix Meschbergerab647de2010-12-23 18:13:24 +0000365 Configure default compilation for Java 1.3 and integration
Felix Meschberger8c64e852009-07-28 13:48:28 +0000366 test compilation for Java 5 (since integration tests use
Felix Meschbergerab647de2010-12-23 18:13:24 +0000367 Java Annotations for Pax Exam).
368 Also configure the compilation of the Gogo Command class
369 (using Java 5 annotations) with Java 5 target.
Felix Meschberger8c64e852009-07-28 13:48:28 +0000370 -->
371 <plugin>
372 <artifactId>maven-compiler-plugin</artifactId>
David Jencks98ecf7d2012-10-12 00:40:18 +0000373 <!--<executions>-->
374 <!--<execution>-->
375 <!--<id>compile-java5</id>-->
376 <!--<goals>-->
377 <!--<goal>compile</goal>-->
378 <!--</goals>-->
379 <!--<configuration>-->
380 <!--<source>1.5</source>-->
381 <!--<target>1.5</target>-->
382 <!--<excludes>-->
383 <!--<exclude>dummy-to-overwrite-global-config</exclude>-->
384 <!--</excludes>-->
385 <!--<includes>-->
386 <!--<include>**/ScrGogoCommand.java</include>-->
387 <!--</includes>-->
388 <!--</configuration>-->
389 <!--</execution>-->
390 <!--<execution>-->
391 <!--<id>test-compile-java5</id>-->
392 <!--<goals>-->
393 <!--<goal>testCompile</goal>-->
394 <!--</goals>-->
395 <!--<configuration>-->
396 <!--<source>1.5</source>-->
397 <!--<target>1.5</target>-->
398 <!--<testIncludes>-->
399 <!--<testInclude>**/integration/**</testInclude>-->
400 <!--</testIncludes>-->
401 <!--<testExcludes>-->
402 <!--<testExclude>**/impl/**</testExclude>-->
403 <!--</testExcludes>-->
404 <!--</configuration>-->
405 <!--</execution>-->
406 <!--</executions>-->
Felix Meschberger8c64e852009-07-28 13:48:28 +0000407 <configuration>
David Jencks98ecf7d2012-10-12 00:40:18 +0000408 <source>1.5</source>
409 <target>1.5</target>
410 <!--<testExcludes>-->
411 <!--<testExclude>**/integration/**</testExclude>-->
412 <!--</testExcludes>-->
413 <!--<excludes>-->
414 <!--<exclude>**/ScrGogoCommand.java</exclude>-->
415 <!--</excludes>-->
Felix Meschberger8c64e852009-07-28 13:48:28 +0000416 </configuration>
417 </plugin>
418
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000419 <!-- plain unit tests -->
Felix Meschberger8c64e852009-07-28 13:48:28 +0000420 <plugin>
421 <artifactId>maven-surefire-plugin</artifactId>
Felix Meschberger8c64e852009-07-28 13:48:28 +0000422 <configuration>
423 <excludes>
424 <exclude>**/integration/**</exclude>
425 <exclude>**/components/**</exclude>
426 <exclude>**/instances/**</exclude>
427 <exclude>**/instances2/**</exclude>
428 </excludes>
429 </configuration>
430 </plugin>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000431 <!-- integration tests run with pax-exam -->
432 <plugin>
433 <artifactId>maven-failsafe-plugin</artifactId>
434 <version>2.12</version>
435 <executions>
436 <execution>
437 <goals>
438 <goal>integration-test</goal>
439 <goal>verify</goal>
440 </goals>
441 </execution>
442 </executions>
443 <configuration>
444 <systemProperties>
445 <property>
446 <name>project.bundle.file</name>
447 <value>${bundle.file.name}</value>
448 </property>
449 </systemProperties>
450 <excludes>
451 <exclude>**/components/**</exclude>
452 </excludes>
453 <includes>
Felix Meschberger3ce511d2012-03-08 05:55:06 +0000454 <include>**/integration/**</include>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000455 </includes>
456 </configuration>
457 </plugin>
Felix Meschberger75ddf472011-02-04 23:09:29 +0000458 <plugin>
459 <groupId>org.apache.maven.plugins</groupId>
460 <artifactId>maven-javadoc-plugin</artifactId>
461 <configuration>
462 <encoding>${project.build.sourceEncoding}</encoding>
463 <excludePackageNames>*.impl</excludePackageNames>
464 </configuration>
465 </plugin>
Karl Pauls589e2b32007-07-11 18:29:29 +0000466 </plugins>
467 </build>
Felix Meschbergerc71d0e72009-10-12 07:16:08 +0000468
469 <profiles>
470 <!--
471 copy the package such that IDEs may easily use it without
472 setting the system property
473 -->
474 <profile>
475 <id>ide</id>
476 <build>
477 <plugins>
478 <plugin>
479 <artifactId>maven-antrun-plugin</artifactId>
Felix Meschbergerc71d0e72009-10-12 07:16:08 +0000480 <executions>
481 <execution>
482 <id>scr-file-create</id>
483 <phase>package</phase>
484 <goals>
485 <goal>run</goal>
486 </goals>
487 <configuration>
Felix Meschberger87efadb2011-10-11 18:10:07 +0000488 <target>
Felix Meschbergerdbc09e62009-11-02 22:28:37 +0000489 <copy file="${project.build.directory}/${project.build.finalName}.jar" tofile="${project.build.directory}/scr.jar" />
Felix Meschberger87efadb2011-10-11 18:10:07 +0000490 </target>
Felix Meschbergerc71d0e72009-10-12 07:16:08 +0000491 </configuration>
492 </execution>
493 </executions>
494 </plugin>
495 </plugins>
496 </build>
497 </profile>
Felix Meschberger6ac3b022012-03-08 04:37:56 +0000498
499 <profile>
500 <id>felix</id>
501 <activation>
502 <activeByDefault>true</activeByDefault>
503 </activation>
504 <dependencies>
505 <dependency>
506 <groupId>org.apache.felix</groupId>
507 <artifactId>org.apache.felix.framework</artifactId>
508 <version>4.0.2</version>
509 <scope>test</scope>
510 </dependency>
511 </dependencies>
512 </profile>
513 <profile>
514 <id>equinox</id>
515 <dependencies>
516 <dependency>
517 <groupId>org.eclipse</groupId>
518 <artifactId>osgi</artifactId>
519 <version>3.7.1.R37x_v20110808-1106</version>
520 <scope>test</scope>
521 </dependency>
522 </dependencies>
523 </profile>
Felix Meschbergerc71d0e72009-10-12 07:16:08 +0000524 </profiles>
525
Karl Pauls589e2b32007-07-11 18:29:29 +0000526</project>