| <?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 |
| |
| --> |
| |
| <!-- |
| *** GENERATED FROM project.xml - DO NOT EDIT *** |
| *** EDIT ../build.xml INSTEAD *** |
| |
| For the purpose of easier reading the script |
| is divided into following sections: |
| |
| - initialization |
| - compilation |
| - dist |
| - execution |
| - debugging |
| - cleanup |
| |
| --> |
| <project name="EntApp-impl" default="build" basedir=".." xmlns:ear2="http://www.netbeans.org/ns/j2ee-earproject/2"> |
| <import file="ant-deploy.xml"/> |
| <target name="default" depends="dist" description="Build whole project."/> |
| <!-- |
| INITIALIZATION SECTION |
| --> |
| <target name="pre-init"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="init-private" depends="pre-init"> |
| <property file="nbproject/private/private.properties"/> |
| </target> |
| <target name="init-userdir" depends="pre-init,init-private"> |
| <property name="user.properties.file" location="${netbeans.user}/build.properties"/> |
| </target> |
| <target name="init-user" depends="pre-init,init-private,init-userdir"> |
| <property file="${user.properties.file}"/> |
| </target> |
| <target name="init-project" depends="pre-init,init-private,init-userdir,init-user"> |
| <property file="nbproject/project.properties"/> |
| </target> |
| <target name="do-init" depends="pre-init,init-private,init-userdir,init-user,init-project"> |
| <!-- The two properties below are usually overridden --> |
| <!-- by the active platform. Just a fallback. --> |
| <property name="default.javac.source" value="1.4"/> |
| <property name="default.javac.target" value="1.4"/> |
| <condition property="do.compile.jsps"> |
| <istrue value="${compile.jsps}"/> |
| </condition> |
| <condition property="do.display.browser"> |
| <and> |
| <istrue value="${display.browser}"/> |
| <contains string="${client.module.uri}" substring=".war"/> |
| </and> |
| </condition> |
| <available property="has.custom.manifest" file="${meta.inf}/MANIFEST.MF"/> |
| <condition property="j2ee.appclient.mainclass.tool.param" value="-mainclass ${main.class}" else=""> |
| <and> |
| <isset property="main.class"/> |
| <not> |
| <equals arg1="${main.class}" arg2="" trim="true"/> |
| </not> |
| </and> |
| </condition> |
| <condition property="j2ee.appclient.jvmoptions.param" value="${j2ee.appclient.jvmoptions}" else=""> |
| <and> |
| <isset property="j2ee.appclient.jvmoptions"/> |
| <not> |
| <equals arg1="${j2ee.appclient.jvmoptions}" arg2="" trim="true"/> |
| </not> |
| </and> |
| </condition> |
| <condition property="application.args.param" value="${application.args}" else=""> |
| <and> |
| <isset property="application.args"/> |
| <not> |
| <equals arg1="${application.args}" arg2="" trim="true"/> |
| </not> |
| </and> |
| </condition> |
| <condition property="can.debug.appclient"> |
| <and> |
| <isset property="netbeans.home"/> |
| <isset property="app.client"/> |
| </and> |
| </condition> |
| </target> |
| <target name="post-init"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="init-check" depends="pre-init,init-private,init-userdir,init-user,init-project,do-init"> |
| <fail unless="build.dir">Must set build.dir</fail> |
| <fail unless="build.generated.dir">Must set build.generated.dir</fail> |
| <fail unless="dist.dir">Must set dist.dir</fail> |
| <fail unless="build.classes.excludes">Must set build.classes.excludes</fail> |
| <fail unless="dist.jar">Must set dist.jar</fail> |
| </target> |
| <target name="init" depends="pre-init,init-private,init-userdir,init-user,init-project,do-init,post-init,init-check"/> |
| <!-- |
| COMPILATION SECTION |
| --> |
| <target name="deps-jar" depends="init" unless="no.deps"/> |
| <target name="deps-j2ee-archive" depends="init" unless="no.deps"> |
| <ant target="dist-ear" inheritall="false" antfile="${project.EntApp-ejb}/build.xml"> |
| <property name="dist.ear.dir" location="${build.dir}"/> |
| </ant> |
| <ant target="dist-ear" inheritall="false" antfile="${project.EntApp-war}/build.xml"> |
| <property name="dist.ear.dir" location="${build.dir}"/> |
| </ant> |
| </target> |
| <target name="pre-pre-compile" depends="init,deps-jar,deps-j2ee-archive"/> |
| <target name="pre-compile"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="do-compile" depends="init,deps-jar,pre-pre-compile,pre-compile"> |
| <copy todir="${build.dir}/META-INF"> |
| <fileset dir="${meta.inf}"/> |
| </copy> |
| <copy file="${reference.EntApp-ejb.dist-ear}" todir="${build.dir}//"/> |
| <copy file="${reference.EntApp-war.dist-ear}" todir="${build.dir}//"/> |
| </target> |
| <target name="post-compile"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="compile" depends="init,deps-jar,pre-pre-compile,pre-compile,do-compile,post-compile" description="Compile project."/> |
| <!-- |
| DIST BUILDING SECTION |
| --> |
| <target name="pre-dist"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="do-dist-without-manifest" depends="init,compile,pre-dist" unless="has.custom.manifest"> |
| <dirname property="dist.jar.dir" file="${dist.jar}"/> |
| <mkdir dir="${dist.jar.dir}"/> |
| <jar jarfile="${dist.jar}" compress="${jar.compress}"> |
| <fileset dir="${build.dir}"/> |
| </jar> |
| </target> |
| <target name="do-dist-with-manifest" depends="init,compile,pre-dist" if="has.custom.manifest"> |
| <dirname property="dist.jar.dir" file="${dist.jar}"/> |
| <mkdir dir="${dist.jar.dir}"/> |
| <jar jarfile="${dist.jar}" compress="${jar.compress}" manifest="${meta.inf}/MANIFEST.MF"> |
| <fileset dir="${build.dir}"/> |
| </jar> |
| </target> |
| <target name="post-dist"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="dist" depends="init,compile,pre-dist,do-dist-without-manifest,do-dist-with-manifest,post-dist" description="Build distribution (JAR)."/> |
| <!-- |
| EXECUTION SECTION |
| --> |
| <target name="run" depends="run-deploy,run-display-browser,run-ac" description="Deploy to server."/> |
| <target name="pre-run-deploy"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="post-run-deploy"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="-pre-nbmodule-run-deploy"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -pre-run-deploy task instead. --> |
| </target> |
| <target name="-post-nbmodule-run-deploy"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- This target can be overriden by NetBeans modules. Don't override it directly, use -post-run-deploy task instead. --> |
| </target> |
| <target name="-run-deploy-am" unless="no.deps"> |
| <!-- Task to deploy to the Access Manager runtime. --> |
| <ant target="-run-deploy-am" inheritall="false" antfile="${project.EntApp-ejb}/build.xml"/> |
| <ant target="-run-deploy-am" inheritall="false" antfile="${project.EntApp-war}/build.xml"/> |
| </target> |
| <target name="run-deploy" depends="dist,pre-run-deploy,-pre-nbmodule-run-deploy,-run-deploy-nb,-init-deploy-ant,-deploy-ant,-run-deploy-am,-post-nbmodule-run-deploy,post-run-deploy"/> |
| <target name="-run-deploy-nb" if="netbeans.home"> |
| <nbdeploy debugmode="false" forceRedeploy="${forceRedeploy}" clientUrlPart="${client.urlPart}" clientModuleUri="${client.module.uri}"/> |
| </target> |
| <target name="-init-deploy-ant" unless="netbeans.home"> |
| <property name="deploy.ant.archive" value="${dist.jar}"/> |
| <property name="deploy.ant.resource.dir" value="${resource.dir}"/> |
| <property name="deploy.ant.enabled" value="true"/> |
| </target> |
| <target name="run-undeploy" depends="dist,-run-undeploy-nb,-init-deploy-ant,-undeploy-ant"/> |
| <target name="-run-undeploy-nb" if="netbeans.home"> |
| <fail message="Undeploy is not supported from within the IDE"/> |
| </target> |
| <target name="verify" depends="dist"> |
| <nbverify file="${dist.jar}"/> |
| </target> |
| <target name="run-display-browser" depends="run-deploy,-init-display-browser,-display-browser-nb,-display-browser-cl"/> |
| <target name="-init-display-browser" if="do.display.browser"> |
| <condition property="do.display.browser.nb"> |
| <isset property="netbeans.home"/> |
| </condition> |
| <condition property="do.display.browser.cl"> |
| <and> |
| <isset property="deploy.ant.enabled"/> |
| <isset property="deploy.ant.client.url"/> |
| </and> |
| </condition> |
| </target> |
| <target name="-display-browser-nb" if="do.display.browser.nb"> |
| <nbbrowse url="${client.url}"/> |
| </target> |
| <target name="-get-browser" if="do.display.browser.cl" unless="browser"> |
| <condition property="browser" value="rundll32"> |
| <os family="windows"/> |
| </condition> |
| <condition property="browser.args" value="url.dll,FileProtocolHandler" else=""> |
| <os family="windows"/> |
| </condition> |
| <condition property="browser" value="/usr/bin/open"> |
| <os family="mac"/> |
| </condition> |
| <property environment="env"/> |
| <condition property="browser" value="${env.BROWSER}"> |
| <isset property="env.BROWSER"/> |
| </condition> |
| <condition property="browser" value="/usr/bin/firefox"> |
| <available file="/usr/bin/firefox"/> |
| </condition> |
| <condition property="browser" value="/usr/local/firefox/firefox"> |
| <available file="/usr/local/firefox/firefox"/> |
| </condition> |
| <condition property="browser" value="/usr/bin/mozilla"> |
| <available file="/usr/bin/mozilla"/> |
| </condition> |
| <condition property="browser" value="/usr/local/mozilla/mozilla"> |
| <available file="/usr/local/mozilla/mozilla"/> |
| </condition> |
| <condition property="browser" value="/usr/sfw/lib/firefox/firefox"> |
| <available file="/usr/sfw/lib/firefox/firefox"/> |
| </condition> |
| <condition property="browser" value="/opt/csw/bin/firefox"> |
| <available file="/opt/csw/bin/firefox"/> |
| </condition> |
| <condition property="browser" value="/usr/sfw/lib/mozilla/mozilla"> |
| <available file="/usr/sfw/lib/mozilla/mozilla"/> |
| </condition> |
| <condition property="browser" value="/opt/csw/bin/mozilla"> |
| <available file="/opt/csw/bin/mozilla"/> |
| </condition> |
| </target> |
| <target name="-display-browser-cl" depends="-get-browser" if="do.display.browser.cl"> |
| <fail unless="browser"> |
| Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable. |
| </fail> |
| <property name="browse.url" value="${deploy.ant.client.url}${client.urlPart}"/> |
| <echo>Launching ${browse.url}</echo> |
| <exec executable="${browser}" spawn="true"> |
| <arg line="${browser.args} ${browse.url}"/> |
| </exec> |
| </target> |
| <target name="run-ac" depends="init" if="app.client"> |
| <antcall target="run-${app.client}"/> |
| </target> |
| <target name="-as-retrieve-option-workaround" if="j2ee.appclient.mainclass.args" unless="j2ee.clientName"> |
| <property name="client.jar" value="${dist.dir}/EntAppClient.jar"/> |
| <sleep seconds="3"/> |
| <copy file="${wa.copy.client.jar.from}/EntApp/EntAppClient.jar" todir="${dist.dir}"/> |
| </target> |
| <!-- |
| DEBUGGING SECTION |
| --> |
| <target name="debug" depends="run-debug,run-display-browser,run-debug-appclient" description="Deploy to server."/> |
| <target name="run-debug" description="Debug project in IDE." depends="dist" if="netbeans.home" unless="app.client"> |
| <nbdeploy debugmode="true" clientUrlPart="${client.urlPart}" clientModuleUri="${client.module.uri}"/> |
| <antcall target="connect-debugger"/> |
| </target> |
| <target name="connect-debugger" unless="is.debugged"> |
| <nbjpdaconnect name="${name}" host="${jpda.host}" address="${jpda.address}" transport="${jpda.transport}"> |
| <classpath> |
| <path path="${debug.classpath}"/> |
| </classpath> |
| <sourcepath> |
| <path path="${ear.docbase.dirs}"/> |
| </sourcepath> |
| </nbjpdaconnect> |
| </target> |
| <target name="-init-debug-args"> |
| <property name="version-output" value="java version "${ant.java.version}"/> |
| <condition property="have-jdk-older-than-1.4"> |
| <or> |
| <contains string="${version-output}" substring="java version "1.0"/> |
| <contains string="${version-output}" substring="java version "1.1"/> |
| <contains string="${version-output}" substring="java version "1.2"/> |
| <contains string="${version-output}" substring="java version "1.3"/> |
| </or> |
| </condition> |
| <condition property="debug-args-line" value="-Xdebug -Xnoagent -Djava.compiler=none" else="-Xdebug"> |
| <istrue value="${have-jdk-older-than-1.4}"/> |
| </condition> |
| </target> |
| <target name="run-debug-appclient" depends="init,-init-debug-args" if="can.debug.appclient"> |
| <macrodef name="debug-appclient" uri="http://www.netbeans.org/ns/j2ee-earproject/2"> |
| <attribute name="mainclass"/> |
| <attribute name="classpath" default="${debug.classpath}"/> |
| <element name="customize" optional="true"/> |
| <attribute name="args" default="${application.args.param}"/> |
| <sequential> |
| <parallel> |
| <java fork="true" classname="@{mainclass}"> |
| <jvmarg line="${j2ee.appclient.tool.jvmoptions}"/> |
| <jvmarg line="${debug-args-line}"/> |
| <jvmarg value="-Xrunjdwp:transport=${jpda.transport},server=y,address=${jpda.address},suspend=y"/> |
| <jvmarg line="${j2ee.appclient.jvmoptions.param}"/> |
| <arg line="@{args}"/> |
| <classpath> |
| <path path="${j2ee.platform.classpath}:${j2ee.appclient.tool.runtime}"/> |
| <path path="@{classpath}"/> |
| </classpath> |
| <syspropertyset> |
| <propertyref prefix="run-sys-prop."/> |
| <mapper type="glob" from="run-sys-prop.*" to="*"/> |
| </syspropertyset> |
| <customize/> |
| </java> |
| <nbjpdaconnect name="${name}" host="${jpda.host}" address="${jpda.address}" transport="${jpda.transport}"> |
| <classpath> |
| <path path="${j2ee.platform.classpath}:${j2ee.appclient.tool.runtime}"/> |
| <path path="@{classpath}"/> |
| </classpath> |
| <sourcepath> |
| <path path="${src.dir}"/> |
| </sourcepath> |
| </nbjpdaconnect> |
| </parallel> |
| </sequential> |
| </macrodef> |
| <nbdeploy debugmode="false" clientUrlPart="${client.urlPart}" clientModuleUri="${client.module.uri}"/> |
| <antcall target="debug-${app.client}"/> |
| </target> |
| <!-- |
| CLEANUP SECTION |
| --> |
| <target name="deps-clean" depends="init" unless="no.deps"> |
| <ant target="clean-ear" inheritall="false" antfile="${project.EntApp-ejb}/build.xml"> |
| <property name="dist.ear.dir" location="${build.dir}"/> |
| </ant> |
| <ant target="clean-ear" inheritall="false" antfile="${project.EntApp-war}/build.xml"> |
| <property name="dist.ear.dir" location="${build.dir}"/> |
| </ant> |
| </target> |
| <target name="do-clean" depends="init"> |
| <delete dir="${build.dir}"/> |
| <delete dir="${dist.dir}"/> |
| <delete dir="${build.dir}"/> |
| </target> |
| <target name="post-clean"> |
| <!-- Empty placeholder for easier customization. --> |
| <!-- You can override this target in the ../build.xml file. --> |
| </target> |
| <target name="clean" depends="init,deps-clean,do-clean,post-clean" description="Clean build products."/> |
| </project> |