<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (c) 1997, 2020 Oracle and/or its affiliates and others.
    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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.eclipse.ee4j</groupId>
        <artifactId>project</artifactId>
        <version>1.0.6</version>
        <relativePath/>
    </parent>

    <groupId>org.glassfish</groupId>
    <artifactId>jakarta.el</artifactId>
    <version>4.0.0</version>

    <name>Jakarta Expression Language Implementation</name>
    <description>Jakarta Expression Language Implementation</description>
    <url>https://projects.eclipse.org/projects/ee4j.el</url>

    <developers>
        <developer>
            <id>jakarta-ee4j-el</id>
            <name>Jakarta Expression Language Developers</name>
            <organization>Eclipse Foundation</organization>
            <email>el-dev@eclipse.org</email>
        </developer>
    </developers>
    <contributors>
       <contributor>
           <name>Jakarta Expression Language Contributors</name>
           <email>el-dev@eclipse.org</email>
           <url>https://github.com/eclipse-ee4j/el-ri/graphs/contributors</url>
       </contributor>
    </contributors>

    <mailingLists>
        <mailingList>
            <name>Expression Language dev mailing list</name>
            <post>el-dev@eclipse.org</post>
            <subscribe>https://dev.eclipse.org/mailman/listinfo/el-dev</subscribe>
            <unsubscribe>https://dev.eclipse.org/mailman/listinfo/el-dev</unsubscribe>
            <archive>https://dev.eclipse.org/mhonarc/lists/el-dev</archive>
        </mailingList>
    </mailingLists>

    <scm>
        <connection>scm:git:https://github.com/eclipse-ee4j/el-ri.git</connection>
        <developerConnection>scm:git:ssh://git@github.com/eclipse-ee4j/el-ri.git</developerConnection>
        <url>https://github.com/eclipse-ee4j/el-ri</url>
        <tag>HEAD</tag>
    </scm>
    <issueManagement>
        <system>github</system>
        <url>https://github.com/eclipse-ee4j/el-ri/issues</url>
    </issueManagement>

    <properties>
        <!-- the bundle build number must be the same as the maven number -->
        <bundle.version>${project.version}</bundle.version>
        <!-- The most current api version -->
        <spec.version>4.0</spec.version>
        <extensionName>jakarta.el.impl</extensionName>
        <bundle.symbolicName>org.glassfish.jakarta.el</bundle.symbolicName>
        <vendorName>Eclipse Foundation</vendorName>
    </properties>

    <dependencies>
        <dependency>
            <groupId>jakarta.el</groupId>
            <artifactId>jakarta.el-api</artifactId>
            <version>${bundle.version}</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <resource>
                <directory>${project.basedir}/..</directory>
                <includes>
                    <include>LICENSE.md</include>
                    <include>NOTICE.md</include>
                </includes>
                <targetPath>META-INF</targetPath>
            </resource>
        </resources>
        <plugins>
            <!-- Sets minimal Maven version to 3.5.4 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>3.0.0-M3</version>
                <executions>
                    <execution>
                        <id>enforce-maven</id>
                        <goals>
                            <goal>enforce</goal>
                        </goals>
                        <configuration>
                            <rules>
                                <requireMavenVersion>
                                    <version>3.5.4</version>
                                    <message>You need Maven 3.5.4 or higher</message>
                                </requireMavenVersion>
                            </rules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <!-- Configure maven-bundle-plugin to generate OSGi manifest. Please note: we use the manifest goal only and not the bundle goal. 
                The bundle goal can lead to very surprising results if the package names are not correctly specified. So, we use the jar plugin to generate the 
                jar. -->
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <version>4.2.1</version>
                <configuration>
                    <instructions>
                        <Bundle-SymbolicName>${bundle.symbolicName}</Bundle-SymbolicName>
                        <_include>-osgi.bundle</_include>
                    </instructions>
                </configuration>
                <executions>
                    <execution>
                        <id>bundle-manifest</id>
                        <phase>process-classes</phase>
                        <goals>
                            <goal>manifest</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <!-- Adds the manifest file created by the org.apache.felix:maven-bundle-plugin -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.2.0</version>
                <configuration>
                    <archive>
                        <manifestFile>
                            ${project.build.outputDirectory}/META-INF/MANIFEST.MF
                        </manifestFile>
                        <manifestEntries>
                            <Extension-Name>${extensionName}</Extension-Name>
                            <Specification-Version>${spec.version}</Specification-Version>
                            <Specification-Vendor>${vendorName}</Specification-Vendor>
                            <Implementation-Version>${project.version}</Implementation-Version>
                            <Implementation-Vendor>${vendorName}</Implementation-Vendor>
                        </manifestEntries>
                    </archive>
                </configuration>
            </plugin>

            <!-- Restricts the Java version to 1.8 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <compilerArgument>-Xlint:unchecked</compilerArgument>
                </configuration>
            </plugin>

            <!-- Create Javadoc for API jar -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>3.2.0</version>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <configuration>
                            <source>1.8</source>
                            <additionalJOption>-Xdoclint:none</additionalJOption>
                            <groups>
                                <group>
                                    <title>Jakarta Expression Language ${spec.version} Implementation</title>
                                    <packages>com.sun.el</packages>
                                </group>
                            </groups>
                            <bottom><![CDATA[
Comments to: <a href="mailto:el-dev@eclipse.org">el-dev@eclipse.org</a>.<br>
Copyright &#169; 2018, 2020 Eclipse Foundation. All rights reserved.<br>
Use is subject to <a href="http://www.eclipse.org/legal/epl-2.0" target="_top">license terms</a>.]]>
                            </bottom>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            
            <!-- Use ant to manually invoke javacc, as this required is very infrequently <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>javacc-maven-plugin</artifactId> 
                <version>2.6</version> <executions> <execution> <id>jjtree-javacc</id> <goals> <goal>jjtree-javacc</goal> </goals> <configuration> <sourceDirectory>src/main/java/com/sun/el/parser</sourceDirectory> 
                <outputDirectory>src/main/java/com/sun/el/parser</outputDirectory> </configuration> </execution> </executions> </plugin> -->
            
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <configuration>
                    <mavenExecutorId>forked-path</mavenExecutorId>
                    <useReleaseProfile>false</useReleaseProfile>
                    <arguments>${release.arguments}</arguments>
                </configuration>
            </plugin>
            
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>3.0.0-M4</version>
                <configuration>
                    <forkMode>never</forkMode>
                </configuration>
            </plugin>
	   </plugins>
    </build>
</project>
