From b9421dc80af485591a9c50cc8921f912e0def11e Mon Sep 17 00:00:00 2001 From: Ashlee Young Date: Fri, 23 Oct 2015 10:05:40 -0700 Subject: Removing sources to replace with download links instead. Change-Id: Ie28789a725051aec0d1b04dd291b7690a7898668 Signed-off-by: Ashlee Young --- .../ant/apache-ant-1.9.6/manual/Tasks/depend.html | 216 --------------------- 1 file changed, 216 deletions(-) delete mode 100644 framework/src/ant/apache-ant-1.9.6/manual/Tasks/depend.html (limited to 'framework/src/ant/apache-ant-1.9.6/manual/Tasks/depend.html') diff --git a/framework/src/ant/apache-ant-1.9.6/manual/Tasks/depend.html b/framework/src/ant/apache-ant-1.9.6/manual/Tasks/depend.html deleted file mode 100644 index a0943197..00000000 --- a/framework/src/ant/apache-ant-1.9.6/manual/Tasks/depend.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - -Depend Task - - - - -

Depend

- -A task to manage Java class file dependencies. - -

Description

- -

-The depend task works by determining which classes are out of date with -respect to their source and then removing the class files of any other -classes which depend on the out-of-date classes. -

- -

To determine the class dependencies, the depend task analyzes the class -files of all class files passed to it. Depend does not parse your source code in -any way but relies upon the class references encoded into the class files by the -compiler. This is generally faster than parsing the Java source.

- -

-To learn more about how this information is obtained from the class files, -please refer to the Java -Virtual Machine Specification -

- -

Since a class' dependencies only change when the class itself changes, the -depend task is able to cache dependency information. Only those class files -which have changed will have their dependency information re-analysed. Note that -if you change a class' dependencies by changing the source, it will be -recompiled anyway. You can examine the dependency files created to understand -the dependencies of your classes. Please do not rely, however, on the format of -the information, as it may change in a later release.

- -

Once depend discovers all of the class dependencies, it "inverts" -this relation to determine, for each class, which other classes are dependent -upon it. This "affects" list is used to discover which classes are -invalidated by the out of date class. The class files of the invalidated -classes are removed, triggering the compilation of the affected classes.

- -

The depend task supports an attribute, "closure" which controls -whether depend will only consider direct class-class relationships or whether it -will also consider transitive, indirect relationships. For example, say there -are three classes, A, which depends on B, which in-turn depend on C. Now say -that class C is out of date. Without closure, only class B would be removed by -depend. With closure set, class A would also be removed. Normally direct -relationships are sufficient - it is unusual for a class to depend on another -without having a direct relationship. With closure set, you will notice that -depend typically removes far more class files.

- -

The classpath attribute for <depend> is optional. If it is present, -depend will check class dependencies against classes and jars on this classpath. -Any classes which depend on an element from this classpath and which are older -than that element will be deleted. A typical example where you would use this -facility would be where you are building a utility jar and want to make sure -classes which are out of date with respect to this jar are rebuilt. You should -not include jars in this classpath which you do not expect to change, -such as the JDK runtime jar or third party jars, since doing so will just slow -down the dependency check. This means that if you do use a classpath for the -depend task it may be different from the classpath necessary to actually -compile your code.

- -

Performance

- -

The performance of the depend task is dependent on a -number of factors such as class relationship complexity and how many class files -are out of date. The decision about whether it is cheaper to just recompile all -classes or to use the depend task will depend on the size of your project and -how interrelated your classes are.

- - -

Limitations

- -

There are some source dependencies which depend will not detect.

- - - -The most obvious example of these limitations is that the task can't tell -which classes to recompile when a constant primitive data type exported -by other classes is changed. For example, a change in the definition of -something like -
-public final class Constants {
-  public final static boolean DEBUG=false;
-}
-
will not be picked up by other classes. - -

Parameters

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
AttributeDescriptionRequired
srcDirThis is the directory where the source exists. depend -will examine this to determine which classes are out of date. If you use multiple -source directories you can pass this attribute a path of source directories.Yes
destDirThis is the root directory of the class files which -will be analysed. If this is not present, the srcdir is used.No
cacheThis is a directory in which depend can store and -retrieve dependency information. If this is not present, depend will not -use a cache No
closureThis attribute controls whether depend only removes -classes which directly depend on out of date classes. If this is set to true, -depend will traverse the class dependency graph deleting all affected -classes. Defaults to falseNo
dumpIf true the dependency information will be written to the debug level log - No
classpathThe classpath containing jars and classes for which <depend> should also - check dependenciesNo
warnOnRmiStubsFlag to disable warnings about files that look like rmic generated stub/skeleton - classes, and which have no .java source. Useful when doing rmi development. No, default=true
- -

Parameters specified as nested elements

-

The depend task's classpath attribute is a -PATH-like structure and can also be set -via a nested <classpath> element.

- -

Additionally, -this task forms an implicit -FileSet -and supports most attributes of -<fileset> (dir becomes srcdir), -as well as the nested <include>, -<exclude>, and <patternset> elements. - -

Examples

-
<depend srcdir="${java.dir}"
-        destdir="${build.classes}"
-        cache="depcache"
-        closure="yes"/>
- -

removes any classes in the ${build.classes} directory -that depend on out-of-date classes. Classes are considered out-of-date with -respect to the source in the ${java.dir} directory, using the same -mechanism as the <javac> task. In this example, the -<depend> task caches its dependency -information in the depcache directory.

- -
-<depend srcdir="${java.dir}" destdir="${build.classes}"
-        cache="depcache" closure="yes">
-  <include name="**/*.java"/>
-  <excludesfile name="${java.dir}/build_excludes"/>
-</depend>
-
-

does the same as the previous example, but explicitly includes all -.java files, except those that match the list given -in ${java.dir}/build_excludes.

- - - - - - -- cgit 1.2.3-korg