blob: 7948ee18a19b13b640790a709f323668f6f85247 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 1997, 2020 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
version 2 with the GNU Classpath Exception, which is available at
https://www.gnu.org/software/classpath/license.html.
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-->
<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.glassfish.main.extras</groupId>
<artifactId>extras</artifactId>
<version>6.0.0-SNAPSHOT</version>
<relativePath>../../../pom.xml</relativePath>
</parent>
<artifactId>glassfish-embedded-shell</artifactId>
<name>Embedded GlassFish Shell</name>
<properties>
<classpath.file>${project.build.directory}/tmp/classpath.txt</classpath.file>
</properties>
<build>
<plugins>
<!--
Create a text file containing the generated class path. This
file is used in the ant tasks when the original Class-Path is
augmented. Note: we force the path separator to be a colon
because the plug-in will use the platform-specific separator
otherwise. The ant logic replaces colons with spaces to
reformat the contents of the file so it's useful in the manifest.
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>generate-classpath-file</id>
<phase>process-sources</phase>
<goals>
<goal>build-classpath</goal>
</goals>
<configuration>
<outputFile>${classpath.file}</outputFile>
<outputFilterFile>true</outputFilterFile>
<pathSeparator>:</pathSeparator>
<fileSeparator>/</fileSeparator>
<prefix>../../modules</prefix>
<stripVersion>true</stripVersion>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathLayoutType>custom</classpathLayoutType>
<customClasspathLayout>../../modules/$${artifact.artifactId}$${dashClassifier?}.$${artifact.extension}</customClasspathLayout>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>fixup-jar-classpath</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<ant antfile="../fixup.xml">
<property name="output.file" value="${project.build.finalName}.jar" />
<property name="output.dir" value="${project.build.directory}" />
<property name="stage.dir" value="${project.build.directory}/stage" />
<property name="classpath.file" value="${classpath.file}" />
<property name="bundlename" value="org.glassfish.embedded.shell" />
<property name="install.dir.name" value="${install.dir.name}" />
</ant>
</target>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<!--
The maven-jar-plugin will do the work of finding the transitive
closure of it and the modules on which it depends to build the
accurate Class-Path for the manifest.
-->
<dependency>
<groupId>org.glassfish.hk2</groupId>
<artifactId>hk2-core</artifactId>
</dependency>
<dependency>
<groupId>org.glassfish.main.common</groupId>
<artifactId>glassfish-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish.main.core</groupId>
<artifactId>glassfish</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>