Resolves saker.nest bundle dependencies.
The task will execute the dependency resolution of the Nest repository for the given parameters.
It will return the resolved bundle references. The callers are likely to pass it to another task that converts it to an usable input for other tasks. (E.g. classpath, downloading, etc...)
This task may initiate network requests in order to complete its work.
Summary
Bundles | Specifies the bundle identifiers for which the dependencies should be resolved. |
DependencyConstraints | Specifies the environmental dependency constraints which should be applied to the dependencies. |
DependencyFile | Path to a saker.nest bundle dependency file from which the dependencies should be resolved. |
Filters | Specifies one or more dependency filter to be used when resolving the dependencies. |
SelfBundle | Specifies the self bundle in relation to the dependency resolution. |
Parameters
Collection of BundleIdentifier
Aliases:
Bundle
Specifies the bundle identifiers for which the dependencies should be resolved.
The dependencies of the specified bundles will be resolved for the specified dependency Kinds.
The bundle identifiers may or may not contain version numbers. If they do, they will be pinned for the dependency resolution. If they don't, then the resolution algorithm may freely choose a version that satisfies the dependencies. The attempted versions for satisfaction is descending by version number.
If used together with DependencyFile, the specified bundles will be effectively added to the set of dependencies defined in the file. This parameter can also be used to pin bundles when a version numbers are specified.
Specifies the environmental dependency constraints which should be applied to the dependencies.
The constraints can be based on the JRE major version, Nest repository version, saker.build system version, or the native architecture. Any dependency that doesn't match the specified restrictions will omitted.
Not all constraints need to be specified. If any constraint is missing, it will be filled out based on the current build execution constraint configuration for the Nest repository.
Path to a saker.nest bundle dependency file from which the dependencies should be resolved.
The argument is a path to a file present in Nest repository bundles, which describe the dependencies of an associated bundle. (Entry META-INF/nest/dependencies)
The file will be parsed and the declared dependencies are resolved with the specified dependency Kinds.
Any bundles specified in the Bundles argument will be effectively added to the dependencies declared in the file. During the resolution, the dependencies from the Bundles argument will take priority.
The "this" token in the dependency file is resolved using the SelfBundle argument.
Collection of DependencyFilter
Aliases:
Filter
Specifies one or more dependency filter to be used when resolving the dependencies.
The dependency filters determine what kind of dependencies and how they should be applied when executing the dependency resolution. A dependency filter can be retrieved by any of the tasks that are used to configure them. E.g. nest.dependency.filter.kind() task or nest.dependency.filter.compile() task.
If multiple dependency filters are specified, they are applied after each other. If no filters are specified, all dependencies are resolved, and they are not filtered.
Other dependency filters can be applied when it is suitable for a given use-case. Dependency filters can be created by other Nest packages as well.
Specifies the self bundle in relation to the dependency resolution.
Any "this" tokens in the DependencyFile will be substituted with the self bundle argument.