petals-microkernel
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-microkernel</artifactId>
<version>4.4.0</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2007-2012 EBM WebSourcing, 2012-2026 Linagora
This program/library is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 2.1 of the License, or (at your
option) any later version.
This program/library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
for more details.
You should have received a copy of the GNU Lesser General Public License
along with this program/library; If not, see http://www.gnu.org/licenses/
for the GNU Lesser General Public License version 2.1.
-->
<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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-container-parent</artifactId>
<relativePath>../parent/pom.xml</relativePath>
<version>4.5.0</version>
</parent>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-microkernel</artifactId>
<version>4.4.0</version>
<packaging>jar</packaging>
<name>Petals ESB - Container - Micro-kernel</name>
<properties>
<petals-microkernel-api.version>1.3.0</petals-microkernel-api.version>
<jetty.version>9.4.11.v20180605</jetty.version>
</properties>
<dependencies>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>org.ops4j.pax.url</groupId>
<artifactId>pax-url-aether</artifactId>
<version>2.6.14</version>
<exclusions>
<exclusion>
<!-- Since moving to Java 11, we prefer jakarta.annotation:jakarta.annotation-api -->
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<!-- Required by org.ops4j.pax.url:pax-url-aether in replacement of javax.annotation:javax.annotation-api -->
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
<scope>runtime</scope>
</dependency>
<!-- Fractal dependencies -->
<dependency>
<groupId>org.objectweb.fractal.fractaljmx</groupId>
<artifactId>fractal-jmx</artifactId>
<version>0.3.0</version>
<exclusions>
<!-- We use juliac so we don't need all of that anymore -->
<exclusion>
<artifactId>julia-asm</artifactId>
<groupId>org.objectweb.fractal.julia</groupId>
</exclusion>
<exclusion>
<artifactId>julia-mixins</artifactId>
<groupId>org.objectweb.fractal.julia</groupId>
</exclusion>
<exclusion>
<artifactId>julia-runtime</artifactId>
<groupId>org.objectweb.fractal.julia</groupId>
</exclusion>
<exclusion>
<artifactId>fractal-adl</artifactId>
<groupId>org.objectweb.fractal.fractaladl</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.objectweb.fractal</groupId>
<artifactId>fractal-api</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.fractal.juliac</groupId>
<artifactId>juliac-runtime</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.fractal.juliac</groupId>
<artifactId>juliac-commons</artifactId>
</dependency>
<dependency>
<groupId>org.objectweb.fractal.julia</groupId>
<artifactId>julia-runtime</artifactId>
</dependency>
<dependency>
<groupId>org.objectweb.fractal.fraclet.java</groupId>
<artifactId>fraclet-annotations</artifactId>
</dependency>
<!-- PEtALS dependencies -->
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-jaas</artifactId>
<version>1.4.0</version>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-basis-api</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-client-server-api</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-microkernel-api</artifactId>
<version>${petals-microkernel-api.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-launcher-api</artifactId>
<version>1.4.0</version>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-commons-log</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-message-exchange</artifactId>
<version>1.5.0</version>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-jbi</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-jbi-descriptor</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-topology</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-systemstate</artifactId>
<version>1.6.0</version>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-jmx-api-api</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.easycommons</groupId>
<artifactId>easycommons-util</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.easycommons</groupId>
<artifactId>easycommons-lang</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.easycommons</groupId>
<artifactId>easycommons-uuid</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.easycommons</groupId>
<artifactId>easycommons-properties</artifactId>
</dependency>
<!-- easywsdl dependency -->
<dependency>
<groupId>org.ow2.easywsdl</groupId>
<artifactId>easywsdl-wsdl</artifactId>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-probes-api</artifactId>
<version>1.5.0</version>
</dependency>
<!-- Test dependencies -->
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-jmx-api-mock</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-microkernel-junit</artifactId>
<version>1.3.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.github.stefanbirkner</groupId>
<artifactId>system-lambda</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>${jetty.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-servlet</artifactId>
<version>${jetty.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-jmx-api-impl</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.ow2.petals</groupId>
<artifactId>petals-probes</artifactId>
<version>1.5.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<id>juliac-compile</id>
<phase>process-classes</phase>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>org.objectweb.fractal.juliac.core.JuliacCmdLine</mainClass>
<arguments>
<argument>--basedir</argument>
<argument>${project.basedir}</argument>
<argument>--gensrc</argument>
<argument>${juliac.generated-sources}</argument>
<argument>--genclass</argument>
<argument>${project.build.directory}/classes</argument>
<argument>--mixins</argument>
<argument>target/dependency/julia-mixins-sources.jar:target/dependency/juliac-fraclet-mixins-sources.jar</argument>
<argument>--juliaCfgFiles</argument>
<argument>julia-bundled.cfg,fraclet-bundled.cfg,petals-fractal-bundled.cfg</argument>
<!-- Note: compiling the java classes will generate .fractal descriptions for them -->
<argument>org.ow2.petals.microkernel.admin.PetalsAdminServiceImpl</argument>
<argument>org.ow2.petals.microkernel.communication.JMXRemoteCheckerClientImpl</argument>
<argument>org.ow2.petals.microkernel.communication.jmx.JMXServiceImpl</argument>
<argument>org.ow2.petals.microkernel.communication.jmx.rmi.RMIConnector</argument>
<argument>org.ow2.petals.microkernel.communication.jndi.agent.StandaloneJNDIAgentServiceImpl</argument>
<argument>org.ow2.petals.microkernel.communication.jndi.client.JNDIServiceImpl</argument>
<argument>org.ow2.petals.microkernel.communication.topology.TopologyServiceImpl</argument>
<argument>org.ow2.petals.microkernel.communication.sharedarea.StandaloneSharedAreaImpl</argument>
<argument>org.ow2.petals.microkernel.configuration.ConfigurationServiceImpl</argument>
<argument>org.ow2.petals.microkernel.container.ContainerControllerImpl</argument>
<argument>org.ow2.petals.microkernel.container.ContainerServiceImpl</argument>
<argument>org.ow2.petals.microkernel.container.lifecycle.InstallerImpl</argument>
<argument>org.ow2.petals.microkernel.container.lifecycle.ComponentLifeCycleImpl</argument>
<argument>org.ow2.petals.microkernel.container.lifecycle.ServiceAssemblyLifeCycleImpl</argument>
<argument>org.ow2.petals.microkernel.container.lifecycle.SharedLibraryLifeCycleImpl</argument>
<argument>org.ow2.petals.microkernel.extension.InstallationExtensionsManagerImpl</argument>
<argument>org.ow2.petals.microkernel.extension.PostExtensionsManagerImpl</argument>
<argument>org.ow2.petals.microkernel.extension.PreExtensionsManagerImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.management.MBeanNameBuilderImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.management.admin.AdminServiceImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.management.deployment.AtomicDeploymentServiceImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.management.deployment.DeploymentServiceImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.management.installation.InstallationServiceImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.management.recovery.SystemRecoveryServiceImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.messaging.control.JMXExchangeCheckerClientImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.messaging.endpoint.EndpointDirectoryServiceImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.messaging.routing.RouterServiceImpl</argument>
<argument>org.ow2.petals.microkernel.jbi.messaging.routing.module.AuthorizationModule</argument>
<argument>org.ow2.petals.microkernel.jbi.messaging.routing.module.EndpointResolverModule</argument>
<argument>org.ow2.petals.microkernel.jbi.messaging.routing.module.JAASAuthenticationModule</argument>
<argument>org.ow2.petals.microkernel.jbi.messaging.routing.module.TransportResolverModule</argument>
<argument>org.ow2.petals.microkernel.server.PetalsCompositeControllerImpl</argument>
<argument>org.ow2.petals.microkernel.system.classloader.ClassLoaderServiceImpl</argument>
<argument>org.ow2.petals.microkernel.system.logging.LoggingServiceImpl</argument>
<argument>org.ow2.petals.microkernel.system.logging.LoggingServiceMBeanImpl</argument>
<argument>org.ow2.petals.microkernel.system.repository.RepositoryServiceImpl</argument>
<argument>org.ow2.petals.microkernel.system.systemstate.SystemStateServiceImpl</argument>
<argument>org.ow2.petals.microkernel.transport.local.LocalTransporterImpl</argument>
<argument>org.ow2.petals.microkernel.transport.local.monitoring.LocalTransporterMonitoringImpl</argument>
<argument>org.ow2.petals.microkernel.transport.platform.nio.NioTransporterImpl</argument>
<argument>org.ow2.petals.microkernel.transport.platform.nio.client.NioClientObjectPoolImpl</argument>
<argument>org.ow2.petals.microkernel.transport.platform.nio.monitoring.TcpTransporterMonitoringImpl</argument>
<argument>org.ow2.petals.microkernel.transport.platform.nio.selector.NioSelectorAgent</argument>
<argument>org.ow2.petals.microkernel.transport.platform.nio.server.NioServerAgent</argument>
<!-- Compiling the description is only needed to instantiate it from the code -->
<argument>Petals</argument>
</arguments>
<sourceRoot>${juliac.generated-sources}</sourceRoot>
<includePluginDependencies>true</includePluginDependencies>
<skip>${juliac.skip}</skip>
</configuration>
</execution>
<execution>
<id>juliac-test-compile</id>
<phase>process-test-classes</phase>
<goals>
<goal>java</goal>
</goals>
<configuration>
<mainClass>org.objectweb.fractal.juliac.core.JuliacCmdLine</mainClass>
<arguments>
<argument>--basedir</argument>
<argument>${project.basedir}</argument>
<argument>--gensrc</argument>
<argument>${juliac.generated-test-sources}</argument>
<argument>--genclass</argument>
<argument>${project.build.directory}/test-classes</argument>
<argument>--mixins</argument>
<argument>target/dependency/julia-mixins-sources.jar:target/dependency/juliac-fraclet-mixins-sources.jar</argument>
<argument>--juliaCfgFiles</argument>
<argument>julia-bundled.cfg,fraclet-bundled.cfg,petals-fractal-bundled.cfg</argument>
<argument>org.ow2.petals.microkernel.extension.utest.PreExtensionImplFaillingStartup</argument>
<argument>org.ow2.petals.microkernel.extension.utest.PreExtensionImpl</argument>
<argument>org.ow2.petals.microkernel.extension.utest.PostExtensionImpl</argument>
<argument>org.ow2.petals.microkernel.extension.utest.InstallationExtensionImpl</argument>
<argument>org.ow2.petals.microkernel.utest.mock.jbi.management.ContainerServiceImpl</argument>
<argument>org.ow2.petals.microkernel.utest.mock.jbi.messaging.endpoint.EndpointDirectoryImpl</argument>
<argument>org.ow2.petals.microkernel.utest.mock.communication.JMXServiceImpl</argument>
<argument>org.ow2.petals.microkernel.utest.mock.system.SharedAreaImpl</argument>
<argument>org.ow2.petals.microkernel.utest.mock.PostExtensionsManagerImpl</argument>
<argument>org.ow2.petals.microkernel.container.utest.ContainerControllerImpl</argument>
<argument>org.ow2.petals.microkernel.container.utest.DummyInstallerImpl</argument>
<argument>org.ow2.petals.microkernel.extension.PreExtensionManagerRoot</argument>
<argument>org.ow2.petals.microkernel.jbi.management.admin.AdminServiceRoot</argument>
<argument>org.ow2.petals.microkernel.container.ContainerServiceRoot</argument>
</arguments>
<testSourceRoot>${juliac.generated-test-sources}</testSourceRoot>
<classpathScope>test</classpathScope>
<includePluginDependencies>true</includePluginDependencies>
<skip>${juliac.skip}</skip>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.ow2.fractal.juliac.fraclet</groupId>
<artifactId>juliac-fraclet-annot-service</artifactId>
<version>${juliac.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.fractal.juliac.fraclet</groupId>
<artifactId>juliac-fraclet-fractaladl-service</artifactId>
<version>${juliac.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.fractal.juliac.fraclet</groupId>
<artifactId>juliac-fraclet-opt-oo-service</artifactId>
<version>${juliac.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.fractal.juliac</groupId>
<artifactId>juliac-spoon-classloader-service</artifactId>
<version>${juliac.version}</version>
</dependency>
<dependency>
<!-- It's a project dependency with scope 'provided'. So we must added it explicitly -->
<groupId>org.ow2.petals</groupId>
<artifactId>petals-microkernel-api</artifactId>
<version>${petals-microkernel-api.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<!-- Compile the source Fractal generated code -->
<id>juliac-compile</id>
<phase>process-classes</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<!-- Compile the test Fractal generated code -->
<id>juliac-test-compile</id>
<phase>process-test-classes</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<!-- CAUTION !!! Must be placed after exec-maven-plugin because dependency analyze is mapped on the same phase than exec-maven-plugin -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-julia-mixins</id>
<phase>generate-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.objectweb.fractal.julia</groupId>
<artifactId>julia-mixins</artifactId>
<version>${julia-mixins.version}</version>
<classifier>sources</classifier>
</artifactItem>
<artifactItem>
<groupId>org.ow2.fractal.juliac.fraclet</groupId>
<artifactId>juliac-fraclet-mixins</artifactId>
<version>${juliac-fraclet-mixins.version}</version>
<classifier>sources</classifier>
</artifactItem>
</artifactItems>
<stripVersion>true</stripVersion>
</configuration>
</execution>
<execution>
<id>analyze</id>
<configuration>
<usedDependencies>
<!-- Loaded at runtime by org.ow2.petals.jmx.api.api.PetalsJmxApiFactory -->
<usedDependency>org.ow2.petals:petals-jmx-api-impl</usedDependency>
<!-- Loaded at runtime by org.ow2.petals.probes.api.ProbesFactoryBuilder -->
<usedDependency>org.ow2.petals:petals-probes</usedDependency>
<!-- Used by org.ops4j.pax.url:pax-url-aether in replacement of javax.annotation:javax.annotation-api -->
<usedDependency>jakarta.annotation:jakarta.annotation-api</usedDependency>
</usedDependencies>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<!-- This is needed because petals-launcher-default only loads the jar
(and the classloader loads the dependencies from the manifest) -->
<addClasspath>true</addClasspath>
<useUniqueVersions>false</useUniqueVersions>
</manifest>
<manifestEntries>
<Implementation-Title>org.ow2.petals</Implementation-Title>
<Implementation-Version>${project.version}</Implementation-Version>
<Implementation-Vendor>Linagora</Implementation-Vendor>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<excludePackageNames>juliac</excludePackageNames>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<scm>
<connection>scm:svn:https://svn.petalslink.org/svnroot/tags/petals-microkernel-4.4.0</connection>
<developerConnection>scm:svn:https://svn.petalslink.org/svnroot/tags/petals-microkernel-4.4.0</developerConnection>
<url>scm:svn:https://svn.petalslink.org/svnroot/tags/petals-microkernel-4.4.0</url>
</scm>
</project>