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

    Copyright (c) 2017, 2018 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://www.netbeans.org/ns/project/1">
    <type>org.netbeans.modules.j2ee.earproject</type>
    <configuration>
        <data xmlns="http://www.netbeans.org/ns/j2ee-earproject/2">
            <name>EntApp</name>
            <minimum-ant-version>1.6</minimum-ant-version>
            <web-module-libraries/>
            <web-module-additional-libraries>
                <library files="1">
                    <file>${reference.EntApp-ejb.dist-ear}</file>
                    <path-in-war>/</path-in-war>
                </library>
                <library files="1">
                    <file>${reference.EntApp-war.dist-ear}</file>
                    <path-in-war>/</path-in-war>
                </library>
            </web-module-additional-libraries>
        </data>
        <references xmlns="http://www.netbeans.org/ns/ant-project-references/1">
            <reference>
                <foreign-project>EntApp-ejb</foreign-project>
                <artifact-type>j2ee_ear_archive</artifact-type>
                <script>build.xml</script>
                <target>dist-ear</target>
                <clean-target>clean-ear</clean-target>
                <id>dist-ear</id>
            </reference>
            <reference>
                <foreign-project>EntApp-war</foreign-project>
                <artifact-type>j2ee_ear_archive</artifact-type>
                <script>build.xml</script>
                <target>dist-ear</target>
                <clean-target>clean-ear</clean-target>
                <id>dist-ear</id>
            </reference>
        </references>
    </configuration>
</project>
