<?xml version="1.0" encoding="UTF-8"?> <!-- /********************************************************************* * Copyright (c) 2022 Kentyou and others * * This program and the accompanying materials are made * available under the terms of the Eclipse Public License 2.0 * which is available at https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 **********************************************************************/ --> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <modelVersion>4.0.0</modelVersion> <groupId>org.eclipse.sensinact.gateway</groupId> <artifactId>sensinact-parent</artifactId> <version>0.0.2-SNAPSHOT</version> <packaging>pom</packaging> <url>https://projects.eclipse.org/projects/technology.sensinact</url> <inceptionYear>2017</inceptionYear> <organization> <name>Eclipse Foundation</name> <url>https://www.eclipse.org/org/foundation/</url> </organization> <licenses> <license> <name>EPL 2.0</name> <url>http://www.eclipse.org/legal/epl-2.0</url> <distribution>repo</distribution> <comments>Except for 3rd party content and examples.</comments> </license> </licenses> <developers> <developer> <id>timothyjward</id> <name>Timothy Ward</name> <organization>Kentyou</organization> <organizationUrl>https://www.kentyou.com/</organizationUrl> </developer> <developer> <id>tcalmant</id> <name>Thomas Calmant</name> <organization>Kentyou</organization> <organizationUrl>https://www.kentyou.com/</organizationUrl> </developer> <developer> <id>juergen-albert</id> <name>Jürgen Albert</name> <organization>Data in Motion</organization> <organizationUrl>https://www.datainmotion.de/</organizationUrl> </developer> <developer> <id>stbischof</id> <name>Stefan Bischof</name> </developer> </developers> <contributors> <contributor> <name>Christophe Munilla</name> <organization>Kentyou</organization> </contributor> <contributor> <name>Etienne Gandrilee</name> <organization>CEA</organization> </contributor> <contributor> <name>Jander Botelho do Nascimento</name> <organization>CEA</organization> </contributor> <contributor> <name>Remi Druilhe</name> <organization>CEA</organization> </contributor> </contributors> <mailingLists> <mailingList> <name>Eclipse sensiNact Development List</name> <post>sensinact-dev@eclipse.org</post> </mailingList> </mailingLists> <modules> <module>core</module> <module>southbound</module> <module>northbound</module> <module>examples</module> <module>sensinact-bom</module> <module>distribution</module> </modules> <scm> <connection>scm:git:git@github.com:eclipse/org.eclipse.sensinact.gateway.git</connection> <developerConnection>scm:git:git@github.com:eclipse/org.eclipse.sensinact.gateway.git</developerConnection> <url>https://github.com/eclipse/org.eclipse.sensinact.gateway</url> </scm> <properties> <jackson.version>2.16.1</jackson.version> <slf4j.version>2.0.11</slf4j.version> <felix.framework.version>7.0.3</felix.framework.version> <osgi.cm.version>1.6.1</osgi.cm.version> <emf.ecore.xmi.version>2.36.0</emf.ecore.xmi.version> <aries.typedevent.version>0.0.2</aries.typedevent.version> <emf.ecore.version>2.35.0</emf.ecore.version> <felix.servlet.version>2.1.0</felix.servlet.version> <osgi.core.version>7.0.0</osgi.core.version> <osgi.implementation.namespace.version>1.0.0</osgi.implementation.namespace.version> <felix.cm.json.version>2.0.4</felix.cm.json.version> <bnd.resolver.version>7.1.0-SNAPSHOT</bnd.resolver.version> <felix.feature.version>1.0.2</felix.feature.version> <osgi.promise.version>1.3.0</osgi.promise.version> <metrics.version>4.2.19</metrics.version> <mockito.version>5.10.0</mockito.version> <maven.compiler.target>11</maven.compiler.target> <felix.configadmin.version>1.9.24</felix.configadmin.version> <junit.version>5.10.1</junit.version> <logback.version>1.4.14</logback.version> <save.test.bndrun.changes>true</save.test.bndrun.changes> <maven.compiler.source>11</maven.compiler.source> <osgi.function.version>1.1.0</osgi.function.version> <revision>0.0.2</revision> <emf.common.version>2.29.0</emf.common.version> <changelist>-SNAPSHOT</changelist> <aries.spifly.version>1.3.7</aries.spifly.version> <osgi.feature.version>1.0.0</osgi.feature.version> <osgi.test.version>1.3.0</osgi.test.version> <felix.scr.version>2.2.2</felix.scr.version> <aries.component-dsl.version>1.2.2</aries.component-dsl.version> <maven.compiler.release>11</maven.compiler.release> <bnd.version>7.0.0</bnd.version> <verify.test.bndruns>false</verify.test.bndruns> <osgi.converter.version>1.0.9</osgi.converter.version> <osgi.typedevent.version>1.0.0</osgi.typedevent.version> <jjwt.version>0.11.5</jjwt.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <osgi.pushstream.version>1.0.2</osgi.pushstream.version> <johnzon.version>2.0.0</johnzon.version> <osgi.ds.version>1.5.0</osgi.ds.version> <antlr.version>4.12.0</antlr.version> <gecko.emf.version>6.1.0</gecko.emf.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.osgi</groupId> <artifactId>osgi.core</artifactId> <version>${osgi.core.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>osgi.cmpn</artifactId> <version>${osgi.core.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>osgi.annotation</artifactId> <version>${osgi.core.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.namespace.implementation</artifactId> <version>${osgi.implementation.namespace.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.util.promise</artifactId> <version>${osgi.promise.version}</version> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.util.function</artifactId> <version>${osgi.function.version}</version> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.service.component</artifactId> <version>${osgi.ds.version}</version> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.service.component.annotations</artifactId> <version>${osgi.ds.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.service.cm</artifactId> <version>${osgi.cm.version}</version> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.service.typedevent</artifactId> <version>${osgi.typedevent.version}</version> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.service.feature</artifactId> <version>${osgi.feature.version}</version> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.util.converter</artifactId> <version>${osgi.converter.version}</version> </dependency> <dependency> <groupId>org.geckoprojects.emf</groupId> <artifactId>org.gecko.emf.osgi.api</artifactId> <version>${gecko.emf.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.geckoprojects.emf</groupId> <artifactId>org.gecko.emf.osgi.component.minimal</artifactId> <version>${gecko.emf.version}</version> </dependency> <dependency> <groupId>org.eclipse.emf</groupId> <artifactId>org.eclipse.emf.common</artifactId> <version>${emf.common.version}</version> </dependency> <dependency> <groupId>org.eclipse.emf</groupId> <artifactId>org.eclipse.emf.ecore</artifactId> <version>${emf.ecore.version}</version> </dependency> <dependency> <groupId>org.eclipse.emf</groupId> <artifactId>org.eclipse.emf.ecore.xmi</artifactId> <version>${emf.ecore.xmi.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-api</artifactId> <version>${jjwt.version}</version> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-jackson</artifactId> <version>${jjwt.version}</version> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.framework</artifactId> <version>${felix.framework.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.scr</artifactId> <version>${felix.scr.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.configadmin</artifactId> <version>${felix.configadmin.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.cm.json</artifactId> <version>${felix.cm.json.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.feature</artifactId> <version>${felix.feature.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.aries.component-dsl</groupId> <artifactId>org.apache.aries.component-dsl.component-dsl</artifactId> <version>${aries.component-dsl.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.aries.typedevent</groupId> <artifactId>org.apache.aries.typedevent.bus</artifactId> <version>${aries.typedevent.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.util.pushstream</artifactId> <version>${osgi.pushstream.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.aries.spifly</groupId> <artifactId>org.apache.aries.spifly.dynamic.framework.extension</artifactId> <version>${aries.spifly.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.johnzon</groupId> <artifactId>johnzon-core</artifactId> <version>${johnzon.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>jakarta.json</groupId> <artifactId>jakarta.json-api</artifactId> <version>2.1.3</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.http.servlet-api</artifactId> <version>${felix.servlet.version}</version> <exclusions> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-servlet-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-impl</artifactId> <version>${jjwt.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>${logback.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.test.bom</artifactId> <version>${osgi.test.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.junit</groupId> <artifactId>junit-bom</artifactId> <version>${junit.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.geckoprojects.emf</groupId> <artifactId>org.gecko.emf.osgi.codegen</artifactId> <version>${gecko.emf.version}</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.test.junit5</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.osgi</groupId> <artifactId>org.osgi.test.junit5.cm</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <scope>test</scope> </dependency> </dependencies> <repositories> <repository> <releases> <enabled>false</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> <id>ossrh</id> <name>Sonatype Nexus Snapshots</name> <url>https://oss.sonatype.org/content/repositories/snapshots</url> </repository> <repository> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> <id>eclipse-sensinact</id> <name>Eclipse Nexus - sensiNact group</name> <url>https://repo.eclipse.org/content/groups/sensinact/</url> </repository> <repository> <releases> <enabled>false</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> <id>apache-snapshots</id> <name>Apache Snapshots</name> <url>https://repository.apache.org/snapshots/</url> </repository> </repositories> <pluginRepositories> <pluginRepository> <releases> <enabled>false</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> <id>bnd-snapshots</id> <name>bnd snapshot repository</name> <url>https://bndtools.jfrog.io/bndtools/update-snapshot</url> </pluginRepository> <pluginRepository> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> <id>eclipse-dash</id> <name>Eclipse Nexus</name> <url>https://repo.eclipse.org/content/repositories/dash-licenses-snapshots/</url> </pluginRepository> </pluginRepositories> <build> <pluginManagement> <plugins> <plugin> <groupId>biz.aQute.bnd</groupId> <artifactId>bnd-maven-plugin</artifactId> <version>${bnd.version}</version> <executions> <execution> <goals> <goal>bnd-process</goal> </goals> <configuration> <bnd>Bundle-Copyright: Copyright (c) (${now;YYYY}) Contributors to the Eclipse Foundation. Bundle-Description: ${project.description} Bundle-SymbolicName: ${project.groupId}.${project.artifactId} Git-Descriptor: ${system-allow-fail;git describe --dirty --always --abbrev=9} Git-SHA: ${system-allow-fail;git rev-list -1 --no-abbrev-commit HEAD} -noextraheaders: true -reproducible: true</bnd> <bndfile>bnd.bnd</bndfile> </configuration> </execution> <execution> <id>bnd-process-tests</id> <phase>process-test-classes</phase> <goals> <goal>bnd-process-tests</goal> </goals> <configuration> <bnd>Bundle-SymbolicName: ${project.groupId}.${project.artifactId}-tests Fragment-Host: ${project.groupId}.${project.artifactId} Git-Descriptor: ${system-allow-fail;git describe --dirty --always --abbrev=9} Git-SHA: ${system-allow-fail;git rev-list -1 --no-abbrev-commit HEAD} Test-Cases: ${classes;HIERARCHY_INDIRECTLY_ANNOTATED;org.junit.platform.commons.annotation.Testable;CONCRETE;NAMED;*.integration.*}</bnd> <bndfile>tests.bnd</bndfile> <testCases>useTestCasesHeader</testCases> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-jar-plugin</artifactId> <version>3.3.0</version> <executions> <execution> <id>test-jar</id> <phase>package</phase> <goals> <goal>test-jar</goal> </goals> <configuration> <archive> <manifestFile>${project.build.testOutputDirectory}/META-INF/MANIFEST.MF</manifestFile> </archive> </configuration> </execution> </executions> <configuration> <archive> <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile> </archive> <skipIfEmpty>true</skipIfEmpty> </configuration> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.2</version> <configuration> <excludes> <exclude>**/integration/**</exclude> </excludes> </configuration> </plugin> <plugin> <groupId>biz.aQute.bnd</groupId> <artifactId>bnd-resolver-maven-plugin</artifactId> <version>${bnd.resolver.version}</version> <executions> <execution> <id>resolve-test</id> <phase>pre-integration-test</phase> <goals> <goal>resolve</goal> </goals> <configuration> <writeOnChanges>${save.test.bndrun.changes}</writeOnChanges> <failOnChanges>${verify.test.bndruns}</failOnChanges> <includeDependencyManagement>true</includeDependencyManagement> <scopes> <scope>compile</scope> <scope>runtime</scope> <scope>test</scope> </scopes> <bundles> <bundle>${project.build.directory}/${project.build.finalName}-tests.jar</bundle> </bundles> <bndruns> <include>*-test.bndrun</include> </bndruns> </configuration> </execution> <execution> <id>resolve</id> <goals> <goal>resolve</goal> </goals> <configuration> <writeOnChanges>true</writeOnChanges> <failOnChanges>false</failOnChanges> <includeDependencyManagement>true</includeDependencyManagement> <scopes> <scope>compile</scope> <scope>runtime</scope> </scopes> </configuration> </execution> </executions> </plugin> <plugin> <groupId>biz.aQute.bnd</groupId> <artifactId>bnd-testing-maven-plugin</artifactId> <version>${bnd.version}</version> <executions> <execution> <goals> <goal>testing</goal> </goals> </execution> </executions> <configuration> <resolve>false</resolve> <failOnChanges>false</failOnChanges> <includeDependencyManagement>true</includeDependencyManagement> <scopes> <scope>compile</scope> <scope>runtime</scope> <scope>test</scope> </scopes> <bundles> <bundle>${project.build.directory}/${project.build.finalName}-tests.jar</bundle> </bundles> <bndruns> <include>*-test.bndrun</include> </bndruns> </configuration> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>3.3.0</version> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.10.1</version> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>3.0.0</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>flatten-maven-plugin</artifactId> <version>1.1.0</version> <executions> <execution> <id>flatten</id> <phase>process-resources</phase> <goals> <goal>flatten</goal> </goals> </execution> <execution> <id>flatten.clean</id> <phase>clean</phase> <goals> <goal>clean</goal> </goals> </execution> </executions> <configuration> <updatePomFile>true</updatePomFile> <flattenMode>resolveCiFriendliesOnly</flattenMode> </configuration> </plugin> </plugins> </build> <profiles> <profile> <id>ci-build</id> <build> <pluginManagement> <plugins> <plugin> <groupId>biz.aQute.bnd</groupId> <artifactId>bnd-resolver-maven-plugin</artifactId> <version>${bnd.resolver.version}</version> <executions> <execution> <id>resolve-test</id> <configuration> <skip>true</skip> </configuration> </execution> <execution> <id>verify-test</id> <phase>pre-integration-test</phase> <goals> <goal>verify</goal> </goals> <configuration> <includeDependencyManagement>true</includeDependencyManagement> <scopes> <scope>compile</scope> <scope>runtime</scope> <scope>test</scope> </scopes> <bundles> <bundle>${project.build.directory}/${project.build.finalName}-tests.jar</bundle> </bundles> <bndruns> <include>*-test.bndrun</include> </bndruns> </configuration> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> <properties> <save.test.bndrun.changes>false</save.test.bndrun.changes> <verify.test.bndruns>false</verify.test.bndruns> </properties> </profile> <profile> <id>dependabot</id> <properties> <save.test.bndrun.changes>true</save.test.bndrun.changes> <verify.test.bndruns>false</verify.test.bndruns> <skipTests>true</skipTests> </properties> </profile> <profile> <id>dev</id> <properties> <save.test.bndrun.changes>true</save.test.bndrun.changes> <verify.test.bndruns>false</verify.test.bndruns> </properties> </profile> <profile> <id>eclipse-licenses-check</id> <activation> <property> <name>licenses-check</name> <value>true</value> </property> </activation> <build> <plugins> <plugin> <groupId>org.eclipse.dash</groupId> <artifactId>license-tool-plugin</artifactId> <version>1.1.0</version> <executions> <execution> <id>license-check</id> <goals> <goal>license-check</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <pluginRepositories> <pluginRepository> <releases> <enabled>true</enabled> </releases> <id>dash-licenses-snapshots</id> <url>https://repo.eclipse.org/content/repositories/dash-licenses/</url> </pluginRepository> </pluginRepositories> </profile> <profile> <id>dim-nexus</id> <distributionManagement> <repository> <uniqueVersion>false</uniqueVersion> <id>dim_nexus</id> <name>Dim Nexus</name> <url>https://devel.data-in-motion.biz/nexus/repository/sensinact/</url> </repository> </distributionManagement> </profile> </profiles> </project>