PackageAvailArtifact

An object that contains the configuration state for building an Avail artifact.

Author

Richard Arriaga

Properties

Link copied to clipboard

The MessageDigest algorithm to use to create the digests for all the Avail roots' contents. This must be a valid algorithm accessible from java.security.MessageDigest.getInstance.

Link copied to clipboard

The base name to give to the created artifact.

Link copied to clipboard
var artifactType: AvailArtifactType

The AvailArtifactType of the AvailArtifact to create.

Link copied to clipboard
val buildPlan: AvailArtifactBuildPlan

Create an AvailArtifactBuildPlan from the PackageAvailArtifact.

Link copied to clipboard

The title of the artifact being created that will be added to the jar manifest (Attributes.Name.IMPLEMENTATION_TITLE).

Link copied to clipboard

true includes the version #, -.jar, in the jar name; false, .jar

Link copied to clipboard

The Attributes.Name.MAIN_CLASS for the manifest or an empty string if no main class set. This should be the primary main class for starting the application.

Link copied to clipboard

The project-relative path to the directory location where the jar file is to be written.

Link copied to clipboard
var packageType: PackageType

The PackageType of the target artifact build.

Link copied to clipboard
@Input
var projectFileLocation: ProjectHome

The ProjectHome of the AvailProject configuration file to use as the source of information project specific details to include in the artifact build. This defaults to AvailProject.CONFIG_FILE_NAME, "avail-config.json" in the project directory.

Link copied to clipboard

The absolute path to the jar file that will be created.

Link copied to clipboard

The version to give to the created artifact (Attributes.Name.IMPLEMENTATION_VERSION).

Functions

Link copied to clipboard
fun addDirectory(file: File)

Add the directory to be included in the artifact jar. This must be a directory: File.isDirectory.

Link copied to clipboard
fun addFile(file: File, targetDirectory: String)

Add a singular File to be written in the specified target directory path inside the jar.

Link copied to clipboard
fun addJar(jar: JarFile)

Add the JarFile to be included in the artifact jar.

Link copied to clipboard
fun addJarPath(jarPath: String)

Add the string path to the JarFile to be included in the artifact jar.

Link copied to clipboard

Add a custom field to the manifest file of an Avail artifact.

Link copied to clipboard
fun addZipFile(zipFile: ZipFile)

Add the ZipFile to be included in the artifact jar.

Link copied to clipboard
fun create()

This is the core action that is performed.

Link copied to clipboard
fun dependency(dependency: String)
fun dependency(dependency: Dependency)

Add a dependency to be included in the jar.

Link copied to clipboard
fun excludeRoot(rootName: String)

Exclude the provided AvailRoot.name from the artifact.