NAME
Maven::Agent - A base agent for working with maven
VERSION
version 1.06
SYNOPSIS
use Maven::Agent;
my $agent = Maven::Agent->new();
Or if you need to configure your own LWP
my $lwp = LWP::UserAgent->new();
$lwp->env_proxy();
my $agent = Maven::Agent->new(agent => $lwp);
my $maybe_artifact = $agent->resolve(
'javax.servlet:servlet-api:2.5');
if ($maybe_artifact) {
# use it
}
my $artifact = $agent->resolve_or_die(
'javax.servlet:servlet-api:2.5');
my $servlet_api_jar = $agent->download('javax.servlet:servlet-api:2.5');
$agent->download('javax.servlet:servlet-api:2.5',
to => '/path/to/some/directory');
DESCRIPTION
The default agents for working with Maven artifacts.
CONSTRUCTORS
new([%options])
Creates a new agent. %options is passed through to "new([%options])" in
Maven::Maven.
METHODS
download($artifact, [%options])
Downloads $artifact and returns the path to the downloaded file. The
current options are:
to
The path to download the artifact to. If the path is a directory, the
download filename will be artifactId.packaging. Defaults to a
temporary location. If it is the temporary location, the type of the
return value is actually a blessed object that overrides the ""
operator so that it behaves like a string path. This allows the
temporary file to be cleaned up when the object goes out of scope.
get_maven
Returns the Maven::Maven object.
is_local($artifact)
Returns a truthy value if $artifact is found in the local repository.
This method expects $artifact to have already been resolved.
resolve($artifact, [%parts])
Will attempt to resolve $artifact. $artifact can be either an instance
of Maven::Artifact or a coordinate string of the form
groupId:artifactId[:packaging[:classifier]]:version
If resolution was
successful, a new Maven::Artifact will be returned with its uri set.
Otherwise, undef will be returned. If %parts are supplied, their values
will be used to override the corresponding values in $artifact before
resolution is attempted.
resolve_or_die($artifact)
Calls resolve, and, if resolution was successful, the new $artifact
will be returned, otherwise, croak will be called.
AUTHOR
Lucas Theisen
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Lucas Theisen.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
SEE ALSO
Please see those modules/websites for more information related to this
module.
* Maven::MvnAgent
* Maven::Artifact
* Maven::Maven