1 <?xml version="1.0" encoding="UTF-8"?>
3 Copyright © 2016, 2017 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
9 <project xmlns="http://maven.apache.org/POM/4.0.0"
10 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 <modelVersion>4.0.0</modelVersion>
15 Base parent POM for building and packaging single Karaf features.
16 Karaf features are generated based on the POM dependencies; they can be supplemented by a base
17 feature.xml file in src/main/feature.
19 By default, such single features aren't tested for loadability; they're supposed to be aggregated
20 in a feature repository (see feature-repo-parent), which is tested using SingleFeatureTest. The
21 sft profile can be used to enforce SingleFeatureTest on single features too.
23 Single features which aren't part of a repository can not be considered part of a project's API.
24 In any case, refer to each project's declared features to determine their API and future
27 Users should do the following:
29 - specify this as their parent
30 - make sure the packaging is set to feature
31 - setup projects <dependencies/> as needed for their features
35 <groupId>org.opendaylight.odlparent</groupId>
36 <artifactId>abstract-feature-parent</artifactId>
37 <version>13.1.2</version>
38 <relativePath>../abstract-feature-parent</relativePath>
41 <artifactId>single-feature-parent</artifactId>
42 <packaging>pom</packaging>
43 <name>ODL :: odlparent :: ${project.artifactId}</name>
46 <!-- See https://issues.apache.org/jira/browse/MINSTALL-151 -->
47 <allowIncompleteProjects>true</allowIncompleteProjects>
54 This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.
57 <groupId>org.eclipse.m2e</groupId>
58 <artifactId>lifecycle-mapping</artifactId>
59 <version>1.0.0</version>
61 <lifecycleMappingMetadata>
64 <pluginExecutionFilter>
65 <groupId>org.apache.karaf.tooling</groupId>
66 <artifactId>karaf-maven-plugin</artifactId>
67 <versionRange>[4.1.5,)</versionRange>
71 </pluginExecutionFilter>
77 </lifecycleMappingMetadata>
85 <groupId>org.apache.karaf.tooling</groupId>
86 <artifactId>karaf-maven-plugin</artifactId>
87 <version>${karaf.version}</version>
88 <extensions>true</extensions>
89 <configuration combine.children="append">
90 <enableGeneration>true</enableGeneration>
91 <simplifyBundleDependencies>true</simplifyBundleDependencies>
92 <checkDependencyChange>${checkDependencyChange}</checkDependencyChange>
93 <logDependencyChanges>true</logDependencyChanges>
94 <failOnDependencyChange>${failOnDependencyChange}</failOnDependencyChange>
96 <!-- These artifacts are provided by our Karaf distribution. -->
97 <!-- Keep in synch with karaf parent minimal bootFeatures. -->
98 <!-- Aries Blueprint -->
99 <excludedArtifactId>org.apache.aries.blueprint.api</excludedArtifactId>
100 <excludedArtifactId>org.apache.aries.blueprint.core</excludedArtifactId>
101 <!-- Aries Quiesce -->
102 <excludedArtifactId>org.apache.aries.quiesce.api</excludedArtifactId>
104 <excludedArtifactId>jline</excludedArtifactId>
106 <excludedArtifactId>slf4j-api</excludedArtifactId>
107 <excludedArtifactId>jcl-over-slf4j</excludedArtifactId>
108 <!-- Karaf artifacts -->
109 <!-- TODO Rework this once Karaf supports wildcards here -->
110 <excludedArtifactId>org.apache.karaf.jaas.config</excludedArtifactId>
111 <excludedArtifactId>org.apache.karaf.jaas.modules</excludedArtifactId>
112 <excludedArtifactId>org.apache.karaf.shell.console</excludedArtifactId>
113 <excludedArtifactId>org.apache.karaf.shell.core</excludedArtifactId>
115 <excludedArtifactId>org.osgi.compendium</excludedArtifactId>
116 <excludedArtifactId>org.osgi.core</excludedArtifactId>
117 <excludedArtifactId>org.osgi.enterprise</excludedArtifactId>
118 <!-- Bouncy Castle -->
119 <excludedArtifactId>bcprov-jdk18on</excludedArtifactId>
120 <excludedArtifactId>bcprov-ext-jdk18on</excludedArtifactId>
121 <excludedArtifactId>bcpkix-jdk18on</excludedArtifactId>
122 <excludedArtifactId>bcutil-jdk18on</excludedArtifactId>
124 <excludedArtifactId>jaxb-api</excludedArtifactId>
125 <excludedArtifactId>jaxb-runtime</excludedArtifactId>
126 <excludedArtifactId>jakarta.xml.bind-api</excludedArtifactId>
128 <!-- Guava's annotations -->
129 <excludedArtifactId>error_prone_annotations</excludedArtifactId>
130 <excludedArtifactId>j2objc-annotations</excludedArtifactId>
131 <excludedArtifactId>listenablefuture</excludedArtifactId>
133 <!-- Eclipse JDK annotations -->
134 <excludedArtifactId>org.eclipse.jdt.annotation</excludedArtifactId>
136 <!-- Immutables.org annotations -->
137 <excludedArtifactId>value</excludedArtifactId>
139 <!-- Our slf4j logging markers -->
140 <excludedArtifactId>logging-markers</excludedArtifactId>
141 </excludedArtifactIds>