Skip to main content

Source code file content

Revision: 57029

GLASSFISH-18987 Remove call to getService in critical path
» Project Revision History

» Checkout URL

svn / trunk / v2 / appserv-persistence / build.xml

Size: 6040 bytes, 1 line
<?xml version="1.0" encoding="UTF-8"?>

 The contents of this file are subject to the terms 
 of the Common Development and Distribution License 
 (the "License").  You may not use this file except 
 in compliance with the License.
 You can obtain a copy of the license at 
 glassfish/bootstrap/legal/CDDLv1.0.txt or 
 See the License for the specific language governing 
 permissions and limitations under the License.
 When distributing Covered Code, include this CDDL 
 HEADER in each file and include the License file at 
 glassfish/bootstrap/legal/CDDLv1.0.txt.  If applicable, 
 add the following below this CDDL HEADER, with the 
 fields enclosed by brackets "[]" replaced with your 
 own identifying information: Portions Copyright [yyyy] 
 [name of copyright owner]

<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<project name="appserv-persistence" default="all" basedir=".">
    <description>Builds, tests, and runs the project appserv-persistence.</description>
    <import file="nbproject/build-impl.xml"/>

    There exist several targets which are by default empty and which can be 
    used for execution of your tasks. These targets are usually executed 
    before and after some main targets. They are: 

      -pre-init:                 called before initialization of project properties
      -post-init:                called after initialization of project properties
      -pre-compile:              called before javac compilation
      -post-compile:             called after javac compilation
      -pre-compile-single:       called before javac compilation of single file
      -post-compile-single:      called after javac compilation of single file
      -pre-compile-test:         called before javac compilation of JUnit tests
      -post-compile-test:        called after javac compilation of JUnit tests
      -pre-compile-test-single:  called before javac compilation of single JUnit test
      -post-compile-test-single: called after javac compilation of single JUunit test
      -pre-jar:                  called before JAR building
      -post-jar:                 called after JAR building
      -post-clean:               called after cleaning build products

    (Targets beginning with '-' are not intended to be called on their own.)

    Example of inserting an obfuscator after compilation could look like this:

        <target name="-post-compile">
                <fileset dir="${build.classes.dir}"/>

    For list of available properties check the imported 
    nbproject/build-impl.xml file. 

    Another way to customize the build is by overriding existing main targets.
    The targets of interest are: 

      -init-macrodef-javac:     defines macro for javac compilation
      -init-macrodef-junit:     defines macro for junit execution
      -init-macrodef-debug:     defines macro for class debugging
      -init-macrodef-java:      defines macro for class execution
      -do-jar-with-manifest:    JAR building (if you are using a manifest)
      -do-jar-without-manifest: JAR building (if you are not using a manifest)
      run:                      execution of project 
      -javadoc-build:           Javadoc generation
      test-report:              JUnit report generation

    An example of overriding the target for project execution could look like this:

        <target name="run" depends="appserv-persistence-impl.jar">
            <exec dir="bin" executable="launcher.exe">
                <arg file="${dist.jar}"/>

    Notice that the overridden target depends on the jar target and not only on 
    the compile target as the regular run target does. Again, for a list of available 
    properties which you can use, check the target you are overriding in the
    nbproject/build-impl.xml file. 


    <!-- Builds all subprojects - will result ${build.classes.dir} under -->
    <!-- appserv-persistence containing copied class files for the subprojects -->
    <!-- listed below and cause target to result in a jar with the contents -->
    <!-- of those same subprojects.
        Two warnings:
        1) the filesets in this target must be updated if a new subproject is 
        added and meant to be in the jar
        2) this implementation assumes that this project and all listed 
        subprojects use the same value for ${build.classes.dir}
    <target name="compile" depends="init,deps-jar">
        <copy todir="${build.classes.dir}">
            <fileset dir="${project.cmp}/${build.classes.dir}" excludes="${build.classes.excludes}"/>
            <fileset dir="${project.enterprise}/${build.classes.dir}" excludes="${build.classes.excludes}"/>

    <!-- Override Netbeans targets -->

    <target name="-pre-init">
        <property file="./"/>
        <property file="${user.home}/"/>
        <property name="glassfish.maven" value="../bootstrap"/>
        <property file="${glassfish.maven}/"/>
        <property file="${glassfish.maven}/"/>

    <!-- Support for GlassFish -->
    <!-- Don't invoke these directly, let maven do so. -->

    <target name="all" depends="compile, assemble"/>

    <target name="assemble" depends="-pre-init"
        description="Update appserv-cmp.jar with J2EE container specific EJB Persistence implementation classes">
        <jar jarfile="${appserv-cmp.jar}" update="yes">
            <fileset dir="build/classes">
                <include name="**/*.class"/>
                <include name="**/*.dtd"/>
                <include name="**/*.properties"/>
Please Confirm