ProductsServicesDownloadsNewsCompanyContact

yWorks Ant Explorer

yWorks Ant Explorer - Walkthrough

This page provides you with a brief introduction regarding the functionality of yWorks Ant Explorer.

Setup

Overview

The targets of an Ant build script are presented on the left side. In addition to the targets from the originally selected Ant build script, the view also contains all targets from any imported build scripts.

Edges between targets depict their dependencies (for example, resulting from a "depends," or an "antcall"). Special dependencies are expressed by varying line styles, e.g., dashed edges indicate when targets are declared in different source files, edges in dark red result from an "antcall."

Transitive Edges

Transitive edges

Transitive dependencies are painted gray. These are explicitly defined within the analyzed build script. However, since they already implicitly result from other dependencies their definition could also be omitted.
You can hide these edges by simply using a button from the tool bar.

Selecting Nodes

Selecting nodes

Use the "Select" item from a node's popup menu, or alternatively simply double-click on a node to center it within its view and display only those nodes that the respective target/property depends upon.
To see the entire graph again, all you need do is double-click into the background or use the corresponding item from the popup menu on the background.

The tool bar features a toggle button to also display or hide all nodes that in turn depend on the selected ones.

Showing Used Properties

Used properties

All respective properties that are used by Ant tasks from a given target can be displayed if you simply select them via the target's popup menu.

Analyzing Properties

Analyzing

The view containing the properties allows access to the "genesis" and the probable value of a property.
The value can depend on one or more other properties, which is appropriately encoded by connecting edges.

yWorks Ant Explorer evaluates and displays the probable content of a property.
The name of the property is displayed above a horizontal separator. In addition, the expression is displayed below this separator and the evaluated value is shown below yet another separator. The entire expression can be seen in the tooltip of the property.

It should however be noted that the value of an expression of a property can change at runtime. This particularly occurs when using custom tasks or branching with "if"/"unless," but also by manually overwriting values.

Kinds of Properties

Properties

The origin of a property can be easily recognized by its color:

  • Light green
    Property that is "implicitly" available. For example, certain system variables.
  • Green
    Property that is declared within the XML file.
  • Dark green
    Property that has been read from a ".properties" file.
  • Red
    A property that is used by other properties, but is not declared anywhere. This can indicate an error in a build script.
    However, certain custom tasks cannot be correctly identified causing even known properties to be painted in red.
  • Dark red
    Property that originated from an "antcall" parameter. These are not resolved by yWorks Ant Explorer.

Goto Source

Goto source

For each target and each property, the popup menu will allow the direct navigation to the source file where it is declared.

Executing an Ant Task

Ant taskAnt task

You can directly execute any Ant task from within the yWorks Ant Explorer by using the target's popup menu. The dialog that opens will allow you to opt to set or change properties.
Version 1.0 of yWorks Ant Explorer uses the same JVM and also class path as the application itself to execute an Ant build script. Therefore, it is recommended to use the Ant wrapper functionality for complex build scripts.

Depending on the status of a target, its color changes: targets in green have been processed successfully while targets in yellow and red are targets that resulted in warnings or error messages (listed in the protocol window) respectively.

The currently active target is painted orange. The progress bar inside this target's representation shows the percentage of tasks that have already been processed and also the currently active task.

Dependency Progress Bar

Progress

At the bottom of each target representation is the dependency progress bar. Each unit of the progress bar represents a target that has to be executed before the target at hand can be started.
Accordingly, when a target is executed, the dependency progress bars of all depending targets change—even when they are not executed themselves.