blob: ed7dee7f818dcc8ad42a7811f0c1c2792e0c9fc4 [file] [log] [blame]
<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://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>
<parent>
<groupId>org.apache.felix.atomos.examples</groupId>
<artifactId>org.apache.felix.atomos.examples</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.apache.felix.atomos.examples.jlink</artifactId>
<name>atomos.examples.jlink</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<repositories>
<repository>
<id>apache-snapshots</id>
<url>https://repository.apache.org/snapshots</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.atomos.runtime</artifactId>
<version>${atomos.version}</version>
</dependency>
<dependency>
<groupId>org.apache.felix.atomos.tests</groupId>
<artifactId>org.apache.felix.atomos.tests.testbundles.service.contract</artifactId>
<version>${atomos.version}</version>
</dependency>
<dependency>
<groupId>org.apache.felix.atomos.tests</groupId>
<artifactId>org.apache.felix.atomos.tests.testbundles.service.impl</artifactId>
<version>${atomos.version}</version>
</dependency>
<dependency>
<groupId>org.apache.felix.atomos.tests</groupId>
<artifactId>org.apache.felix.atomos.tests.testbundles.service.impl.activator</artifactId>
<version>${atomos.version}</version>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.scr</artifactId>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.promise</artifactId>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.gogo.command</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.gogo.runtime</artifactId>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.gogo.shell</artifactId>
<scope>compile</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>equinox</id>
<dependencies>
<dependency>
<groupId>org.eclipse.platform</groupId>
<artifactId>org.eclipse.osgi</artifactId>
</dependency>
<dependency>
<groupId>org.apache.felix.atomos.osgi.frameworks.equinox</groupId>
<artifactId>atomos.osgi.framework</artifactId>
<version>${atomos.version}</version>
</dependency>
</dependencies>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>felix</id>
<properties>
<buildWithFelix>true</buildWithFelix>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.framework</artifactId>
</dependency>
<dependency>
<groupId>org.apache.felix.atomos.osgi.frameworks.felix</groupId>
<artifactId>atomos.osgi.framework</artifactId>
<version>${atomos.version}</version>
</dependency>
</dependencies>
</profile>
</profiles>
<build>
<plugins>
<plugin>
<groupId>org.moditect</groupId>
<artifactId>moditect-maven-plugin</artifactId>
<version>1.0.0.Beta2</version>
<executions>
<execution>
<id>add-module-infos</id>
<phase>generate-resources</phase>
<goals>
<goal>add-module-info</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/modules</outputDirectory>
<modules>
<module>
<artifact>
<groupId>org.eclipse.platform</groupId>
<artifactId>org.eclipse.osgi</artifactId>
</artifact>
<moduleInfoSource>
open module org.eclipse.osgi {
requires java.xml;
exports org.apache.felix.resolver;
exports org.apache.felix.resolver.util;
exports org.eclipse.core.runtime.adaptor;
exports
org.eclipse.core.runtime.internal.adaptor;
exports org.eclipse.equinox.log;
exports org.eclipse.osgi.container;
exports org.eclipse.osgi.container.builders;
exports org.eclipse.osgi.container.namespaces;
exports
org.eclipse.osgi.framework.console;
exports
org.eclipse.osgi.framework.eventmgr;
exports org.eclipse.osgi.framework.internal.reliablefile;
exports org.eclipse.osgi.framework.log;
exports
org.eclipse.osgi.framework.util;
exports org.eclipse.osgi.internal.cds;
exports
org.eclipse.osgi.internal.container;
exports org.eclipse.osgi.internal.debug;
exports org.eclipse.osgi.internal.framework;
exports
org.eclipse.osgi.internal.framework.legacy;
exports org.eclipse.osgi.internal.hookregistry;
exports
org.eclipse.osgi.internal.hooks;
exports org.eclipse.osgi.internal.loader;
exports
org.eclipse.osgi.internal.loader.buddy;
exports
org.eclipse.osgi.internal.loader.classpath;
exports org.eclipse.osgi.internal.loader.sources;
exports
org.eclipse.osgi.internal.location;
exports
org.eclipse.osgi.internal.messages;
exports
org.eclipse.osgi.internal.permadmin;
exports org.eclipse.osgi.internal.provisional.service.security;
exports
org.eclipse.osgi.internal.provisional.verifier;
exports
org.eclipse.osgi.internal.service.security;
exports
org.eclipse.osgi.internal.serviceregistry;
exports org.eclipse.osgi.internal.signedcontent;
exports
org.eclipse.osgi.internal.url;
exports
org.eclipse.osgi.internal.util;
exports org.eclipse.osgi.internal.weaving;
exports
org.eclipse.osgi.launch;
exports org.eclipse.osgi.report.resolution;
exports
org.eclipse.osgi.service.datalocation;
exports
org.eclipse.osgi.service.debug;
exports org.eclipse.osgi.service.environment;
exports
org.eclipse.osgi.service.localization;
exports org.eclipse.osgi.service.pluginconversion;
exports
org.eclipse.osgi.service.resolver;
exports org.eclipse.osgi.service.runnable;
exports org.eclipse.osgi.service.security;
exports org.eclipse.osgi.service.urlconversion;
exports org.eclipse.osgi.signedcontent;
exports
org.eclipse.osgi.storage;
exports org.eclipse.osgi.storage.bundlefile;
exports org.eclipse.osgi.storage.url;
exports
org.eclipse.osgi.storage.url.bundleentry;
exports
org.eclipse.osgi.storage.url.bundleresource;
exports
org.eclipse.osgi.storage.url.reference;
exports org.eclipse.osgi.storagemanager;
exports org.eclipse.osgi.util;
exports
org.osgi.dto;
exports org.osgi.framework;
exports org.osgi.framework.connect;
exports org.osgi.framework.dto;
exports org.osgi.framework.hooks.bundle;
exports org.osgi.framework.hooks.resolver;
exports
org.osgi.framework.hooks.service;
exports
org.osgi.framework.hooks.weaving;
exports org.osgi.framework.launch;
exports
org.osgi.framework.namespace;
exports org.osgi.framework.startlevel;
exports
org.osgi.framework.startlevel.dto;
exports
org.osgi.framework.wiring;
exports org.osgi.framework.wiring.dto;
exports org.osgi.resource;
exports
org.osgi.resource.dto;
exports org.osgi.service.condpermadmin;
exports
org.osgi.service.log;
exports
org.osgi.service.log.admin;
exports org.osgi.service.packageadmin;
exports org.osgi.service.permissionadmin;
exports
org.osgi.service.resolver;
exports org.osgi.service.startlevel;
exports
org.osgi.service.url;
exports org.osgi.util.tracker;
provides org.osgi.framework.launch.FrameworkFactory with org.eclipse.osgi.launch.EquinoxFactory;
provides
org.osgi.framework.connect.ConnectFrameworkFactory with
org.eclipse.osgi.launch.EquinoxFactory;
uses org.osgi.framework.connect.FrameworkUtilHelper;
}
</moduleInfoSource>
</module>
<module>
<artifact>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.framework</artifactId>
</artifact>
<moduleInfoSource>
open module org.apache.felix.framework {
requires jdk.unsupported;
exports org.apache.felix.framework;
exports org.apache.felix.framework.cache;
exports
org.apache.felix.framework.capabilityset;
exports
org.apache.felix.framework.ext;
exports
org.apache.felix.framework.resolver;
exports org.apache.felix.framework.util;
exports
org.apache.felix.framework.util.manifestparser;
exports
org.apache.felix.framework.wiring;
exports org.apache.felix.resolver;
exports
org.apache.felix.resolver.util;
exports org.osgi.dto;
exports org.osgi.framework;
exports org.osgi.framework.connect;
exports
org.osgi.framework.dto;
exports org.osgi.framework.hooks.bundle;
exports
org.osgi.framework.hooks.resolver;
exports org.osgi.framework.hooks.service;
exports
org.osgi.framework.hooks.weaving;
exports
org.osgi.framework.launch;
exports org.osgi.framework.namespace;
exports
org.osgi.framework.startlevel;
exports
org.osgi.framework.startlevel.dto;
exports
org.osgi.framework.wiring;
exports
org.osgi.framework.wiring.dto;
exports org.osgi.resource;
exports org.osgi.resource.dto;
exports
org.osgi.service.packageadmin;
exports
org.osgi.service.resolver;
exports
org.osgi.service.startlevel;
exports
org.osgi.service.url;
exports org.osgi.util.tracker;
provides org.osgi.framework.launch.FrameworkFactory with
org.apache.felix.framework.FrameworkFactory;
provides
org.osgi.framework.connect.ConnectFrameworkFactory
with org.apache.felix.framework.FrameworkFactory;
uses org.apache.felix.framework.ext.ClassPathExtenderFactory;
uses
org.osgi.framework.connect.FrameworkUtilHelper;
}
</moduleInfoSource>
</module>
<module>
<artifact>
<groupId>org.osgi</groupId>
<artifactId>osgi.promise</artifactId>
</artifact>
<moduleInfoSource>
module osgi.promise {
exports org.osgi.util.function;
exports org.osgi.util.promise;
}
</moduleInfoSource>
</module>
<module>
<artifact>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.scr</artifactId>
</artifact>
<moduleInfoSource>
module org.apache.felix.scr {
requires java.logging;
requires java.management;
requires transitive org.apache.felix.gogo.runtime;
requires transitive atomos.osgi.framework;
requires transitive
osgi.promise;
exports
org.apache.felix.scr.component;
exports org.apache.felix.scr.impl;
exports org.apache.felix.scr.impl.config;
exports org.apache.felix.scr.impl.helper;
exports org.apache.felix.scr.impl.inject;
exports
org.apache.felix.scr.impl.inject.field;
exports org.apache.felix.scr.impl.inject.methods;
exports org.apache.felix.scr.impl.logger;
exports org.apache.felix.scr.impl.manager;
exports
org.apache.felix.scr.impl.metadata;
exports
org.apache.felix.scr.impl.parser;
exports org.apache.felix.scr.impl.runtime;
exports org.apache.felix.scr.impl.xml;
exports org.apache.felix.scr.info;
exports org.kxml2.io;
exports org.osgi.service.component;
exports
org.osgi.service.component.runtime;
exports org.osgi.service.component.runtime.dto;
exports org.xmlpull.v1;
}
</moduleInfoSource>
</module>
<module>
<artifact>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.gogo.command</artifactId>
</artifact>
<moduleInfoSource>
module org.apache.felix.gogo.command {
requires transitive org.apache.felix.gogo.runtime;
requires transitive atomos.osgi.framework;
exports org.apache.felix.gogo.command;
}
</moduleInfoSource>
</module>
<module>
<artifact>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.gogo.runtime</artifactId>
</artifact>
<moduleInfoSource>
module org.apache.felix.gogo.runtime {
requires java.logging;
requires transitive atomos.osgi.framework;
exports org.apache.felix.gogo.runtime;
exports org.apache.felix.gogo.runtime.activator;
exports
org.apache.felix.gogo.runtime.threadio;
exports org.apache.felix.service.command;
exports org.apache.felix.service.threadio;
}
</moduleInfoSource>
</module>
<module>
<artifact>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.gogo.shell</artifactId>
</artifact>
<moduleInfoSource>
module org.apache.felix.gogo.shell {
requires transitive org.apache.felix.gogo.runtime;
requires transitive atomos.osgi.framework;
exports org.apache.felix.gogo.options;
exports
org.apache.felix.gogo.shell;
}
</moduleInfoSource>
</module>
</modules>
</configuration>
</execution>
<execution>
<id>create-runtime-image</id>
<phase>package</phase>
<goals>
<goal>create-runtime-image</goal>
</goals>
<configuration>
<ignoreSigningInformation>true</ignoreSigningInformation>
<modulePath>
<path>${project.build.directory}/modules</path>
<path>${project.build.directory}/${project.artifactId}-${project.version}.jar</path>
</modulePath>
<modules>
<module>atomos.osgi.framework</module>
<module>org.apache.felix.atomos.runtime</module>
<module>org.apache.felix.gogo.command</module>
<module>org.apache.felix.gogo.runtime</module>
<module>org.apache.felix.gogo.shell</module>
<module>org.apache.felix.scr</module>
<module>osgi.promise</module>
<module>org.apache.felix.atomos.tests.testbundles.service.impl</module>
<module>org.apache.felix.atomos.tests.testbundles.service.impl.activator</module>
<module>org.apache.felix.atomos.examples.jlink</module>
</modules>
<launcher>
<name>atomos</name>
<module>org.apache.felix.atomos.examples.jlink/org.apache.felix.atomos.examples.jlink.GogoConsole</module>
</launcher>
<outputDirectory>
${project.build.directory}/atomos
</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>generate-resources</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/modules</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>false</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
<excludeTransitive>true</excludeTransitive>
<includeArtifactIds>
atomos.osgi.framework,
org.apache.felix.atomos.runtime,
org.apache.felix.atomos.tests.testbundles.service.contract,
org.apache.felix.atomos.tests.testbundles.service.impl,
org.apache.felix.atomos.tests.testbundles.service.impl.activator
</includeArtifactIds>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.moditect</groupId>
<artifactId>moditect-maven-plugin</artifactId>
<versionRange>${moditect-maven-plugin.version}</versionRange>
<goals>
<goal>add-module-info</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>