z/OS UNIX subproject overview

A z/OS® UNIX subproject groups resources from one or more systems, such as files or folders, that are required to complete a task. For example, you can place all of the file resources that are required to create a program into a z/OS UNIX subproject.
A z/OS UNIX subproject can contain all of the resources or a subset of resources from a larger collection that are required to build a program. The following resources can be in a subproject:
  • Remote - accessed through the Remote System Explorer (RSE) remote access framework.
  • Local - on the local file system.
  • Remote with local access - on a remote system that is mounted to a logical drive by using the NFS or SMB file transport mechanisms.

IBM® Developer for z/OS uses a workspace to manage z/OS UNIX subprojects. Each z/OS UNIX subproject is represented by a folder in the workspace. z/OS UNIX subproject properties are persisted in XML files that are contained in this folder. z/OS UNIX subprojects are organized by using z/OS UNIX file filters that can populate subprojects with resources from multiple locations, including remote systems. For example, a subproject can reference files from hierarchical systems, such as Windows, Linux®, and z/OS UNIX (under the z/OS system).

A z/OS UNIX subproject can contain multiple filters to logically group similar resources. You can use one z/OS UNIX file filter to group source files, for example, and another filter to group object files. Each z/OS UNIX file filter is represented as a folder within the parent subproject folder. This folder contains XML files that store the filter strings for the file resources that are referenced in the subproject. These XML files also contain the properties for all of the files that are referenced in the filter.

The z/OS Projects view displays file resources that are referenced only by z/OS UNIX subprojects with the filter strings that are described in the z/OS UNIX file filters. Files and folders that are listed in z/OS UNIX subprojects are not physically in these subprojects in the workspace. Instead, they are in their remote location and are referred to by the z/OS UNIX subproject through the filter strings that are defined by the z/OS UNIX file filters.

Each z/OS UNIX subproject has a target environment definition that is associated with it. You can switch the target environment definition that is associated with a z/OS UNIX subproject. The new association resets the options for the subproject such as editor options, build options, and load options that are customized for the new target environment definition. The target environment definition contains the build and link options that are required to build a z/OS UNIX subproject and deploy it to the targeted z/OS UNIX system.