<?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.web</groupId>
    <artifactId>jakarta.servlet.jsp</artifactId>
    <version>3.0.0</version>

    <name>Jakarta Server Pages implementation</name>
    <description>JavaServer Pages API</description>
    <url>https://projects.eclipse.org/projects/ee4j.jsp</url>

    <developers>
        <developer>
            <id>jakarta-ee4j-jsp</id>
            <name>Jakarta Server Pages Developers</name>
            <organization>Eclipse Foundation</organization>
            <email>jsp-dev@eclipse.org</email>
        </developer>
    </developers>
    <contributors>
       <contributor>
           <name>Jakarta Server Pages Contributors</name>
           <email>jsp-dev@eclipse.org</email>
           <url>https://github.com/eclipse-ee4j/jsp-api/graphs/contributors</url>
       </contributor>
    </contributors>

    <mailingLists>
        <mailingList>
            <name>Jakarta Server Pages dev mailing list</name>
            <post>jsp-dev@eclipse.org</post>
            <subscribe>https://dev.eclipse.org/mailman/listinfo/jsp-dev</subscribe>
            <unsubscribe>https://dev.eclipse.org/mailman/listinfo/jsp-dev</unsubscribe>
            <archive>https://dev.eclipse.org/mhonarc/lists/jsp-dev</archive>
        </mailingList>
    </mailingLists>

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

    <properties>
        <!-- the bundle build number must be the same as the maven number -->
        <bundle.version>${project.version}</bundle.version>
        <spec.version>3.0</spec.version>
        <extensionName>jakarta.servlet.jsp</extensionName>
        <bundle.symbolicName>org.glassfish.web.jakarta.servlet.jsp</bundle.symbolicName>
        <vendorName>Eclipse Foundation</vendorName>
    </properties>

    <dependencies>
        <!-- Jakarta EE Dependencies -->
        <dependency>
            <groupId>jakarta.servlet</groupId>
            <artifactId>jakarta.servlet-api</artifactId>
            <version>5.0.0-M2</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>jakarta.el</groupId>
            <artifactId>jakarta.el-api</artifactId>
            <version>4.0.0</version>
        </dependency>
        <dependency>
            <groupId>jakarta.servlet.jsp</groupId>
            <artifactId>jakarta.servlet.jsp-api</artifactId>
            <version>${bundle.version}</version>
        </dependency>

        <!-- Other dependencies -->
        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.10.8</version>
        </dependency>
        <dependency>
            <groupId>eclipse</groupId>
            <artifactId>jdtcore</artifactId>
            <version>3.1.0</version>
            <scope>compile</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>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>jakarta.servlet.ServletContainerInitializer</include>
                </includes>
                <targetPath>META-INF/services</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>
                    <excludes>
                        <exclude>
                            org/apache/jasper/compiler/JDTJavaCompiler.java
                        </exclude>
                        <exclude>
                            org/apache/jasper/compiler/AntJavaCompiler.java
                        </exclude>
                        <exclude>
                            <!-- This is only used by AntJavaCompiler -->
                            org/apache/jasper/util/SystemLogHandler.java
                        </exclude>
                    </excludes>
                </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 Server Pages ${spec.version} Implementation</title>
                                    <packages>org.apache.jasper</packages>
                                    <packages>glassfish.jsp.api</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>

            <!-- Explicitly define staging profile ID as auto-matching finds wrong one -->
            <plugin>
                <groupId>org.sonatype.plugins</groupId>
                <artifactId>nexus-staging-maven-plugin</artifactId>
                <configuration>
                  <stagingProfileId>a59edb2a44fc7</stagingProfileId>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>
