Documentation
¶
Index ¶
- Constants
- type Activation
- type ActivationFile
- type ActivationOS
- type ActivationProperty
- type Build
- type BuildBase
- type CIManagement
- type Configuration
- type Contributor
- type Dependency
- type DependencyManagement
- type Developer
- type DistributionManagement
- type Entries
- type Exclusion
- type Extension
- type IssueManagement
- type License
- type MailingList
- type Notifier
- type Organization
- type Parent
- type Plugin
- type PluginExecution
- type PluginManagement
- type PluginRepository
- type Pom
- type Prerequisites
- type Profile
- type Properties
- type Relocation
- type ReportSet
- type Reporting
- type ReportingPlugin
- type Repository
- type RepositoryPolicy
- type Resource
- type Scm
- type Site
Constants ¶
const PomXMLFileName string = "pom.xml"
PomXMLFileName represents the name of the POM File
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Activation ¶
type Activation struct {
ActiveByDefault bool `xml:"activeByDefault,omitempty"`
JDK string `xml:"jdk,omitempty"`
OS *ActivationOS `xml:"os,omitempty"`
Property *ActivationProperty `xml:"property,omitempty"`
File *ActivationFile `xml:"file,omitempty"`
}
Activation defines a pom.xml Activation
type ActivationFile ¶
type ActivationFile struct {
Missing string `xml:"missing,omitempty"`
Exists string `xml:"exists,omitempty"`
}
ActivationFile defines a pom.xml ActivationFile
type ActivationOS ¶
type ActivationOS struct {
Name string `xml:"name,omitempty"`
Family string `xml:"family,omitempty"`
Arch string `xml:"arch,omitempty"`
Version string `xml:"version,omitempty"`
}
ActivationOS defines a pom.xml ActivationOS
type ActivationProperty ¶
type ActivationProperty struct {
Name string `xml:"name,omitempty"`
Value string `xml:"value,omitempty"`
}
ActivationProperty defines a pom.xml ActivationProperty
type Build ¶
type Build struct {
SourceDirectory string `xml:"sourceDirectory,omitempty"`
ScriptSourceDirectory string `xml:"scriptSourceDirectory,omitempty"`
TestSourceDirectory string `xml:"testSourceDirectory,omitempty"`
OutputDirectory string `xml:"outputDirectory,omitempty"`
TestOutputDirectory string `xml:"testOutputDirectory,omitempty"`
Extensions *[]Extension `xml:"extensions>extension,omitempty"`
BuildBase
}
Build defines a pom.xml Build
type BuildBase ¶
type BuildBase struct {
DefaultGoal string `xml:"defaultGoal,omitempty"`
Resources *[]Resource `xml:"resources>resource,omitempty"`
TestResources *[]Resource `xml:"testResources>testResource,omitempty"`
Directory string `xml:"directory,omitempty"`
FinalName string `xml:"finalName,omitempty"`
Filters *[]string `xml:"filters>filter,omitempty"`
PluginManagement *PluginManagement `xml:"pluginManagement,omitempty"`
Plugins *[]Plugin `xml:"plugins>plugin,omitempty"`
}
BuildBase defines a pom.xml BuildBase
type CIManagement ¶
type CIManagement struct {
System string `xml:"system,omitempty"`
URL string `xml:"url,omitempty"`
Notifiers []Notifier `xml:"notifiers>notifier,omitempty"`
}
CIManagement defines a pom.xml CIManagement
type Configuration ¶
type Configuration struct {
Classifier string `xml:"classifier,omitempty"`
Source string `xml:"source,omitempty"`
Target string `xml:"target,omitempty"`
ConfigurationProfiles *[]string `xml:"profiles>profile,omitempty"`
FinalName string `xml:"finalName,omitempty"`
}
Configuration defines a pom.xml Configuration TODO: change this to map[string]interface{} because different plugins have different configuration https://maven.apache.org/guides/mini/guide-configuring-plugins.html
type Contributor ¶
type Contributor struct {
Name string `xml:"name,omitempty"`
Email string `xml:"email,omitempty"`
URL string `xml:"url,omitempty"`
Organization string `xml:"organization,omitempty"`
OrganizationURL string `xml:"organizationUrl,omitempty"`
Roles *[]string `xml:"roles>role,omitempty"`
Timezone string `xml:"timezone,omitempty"`
Properties Properties `xml:"properties,omitempty"`
}
Contributor defines a pom.xml Contributor
type Dependency ¶
type Dependency struct {
GroupID string `xml:"groupId,omitempty"`
ArtifactID string `xml:"artifactId,omitempty"`
Version string `xml:"version,omitempty"`
Type string `xml:"type,omitempty"`
Classifier string `xml:"classifier,omitempty"`
Scope string `xml:"scope,omitempty"`
SystemPath string `xml:"systemPath,omitempty"`
Exclusions *[]Exclusion `xml:"exclusions>exclusion,omitempty"`
Optional string `xml:"optional,omitempty"`
}
Dependency defines a pom.xml Dependency
type DependencyManagement ¶
type DependencyManagement struct {
Dependencies *[]Dependency `xml:"dependencies>dependency,omitempty"`
}
DependencyManagement defines a pom.xml DependencyManagement
type Developer ¶
type Developer struct {
ID string `xml:"id,omitempty"`
Name string `xml:"name,omitempty"`
Email string `xml:"email,omitempty"`
URL string `xml:"url,omitempty"`
Organization string `xml:"organization,omitempty"`
OrganizationURL string `xml:"organizationUrl,omitempty"`
Roles *[]string `xml:"roles>role,omitempty"`
Timezone string `xml:"timezone,omitempty"`
Properties Properties `xml:"properties,omitempty"`
}
Developer defines a pom.xml Developer
type DistributionManagement ¶
type DistributionManagement struct {
Repository Repository `xml:"repository,omitempty"`
SnapshotRepository Repository `xml:"snapshotRepository,omitempty"`
Site Site `xml:"site,omitempty"`
DownloadURL string `xml:"downloadUrl,omitempty"`
Relocation Relocation `xml:"relocation,omitempty"`
Status string `xml:"status,omitempty"`
}
DistributionManagement defines a pom.xml DistributionManagement
type Exclusion ¶
type Exclusion struct {
ArtifactID string `xml:"artifactId,omitempty"`
GroupID string `xml:"groupId,omitempty"`
}
Exclusion defines a pom.xml Exclusion
type Extension ¶
type Extension struct {
GroupID string `xml:"groupId,omitempty"`
ArtifactID string `xml:"artifactId,omitempty"`
Version string `xml:"version,omitempty"`
}
Extension defines a pom.xml Extension
type IssueManagement ¶
type IssueManagement struct {
System string `xml:"system,omitempty"`
URL string `xml:"url,omitempty"`
}
IssueManagement defines a pom.xml IssueManagement
type License ¶
type License struct {
Name string `xml:"name,omitempty"`
URL string `xml:"url,omitempty"`
Distribution string `xml:"distribution,omitempty"`
Comments string `xml:"comments,omitempty"`
}
License defines a pom.xml License
type MailingList ¶
type MailingList struct {
Name string `xml:"name,omitempty"`
Subscribe string `xml:"subscribe,omitempty"`
Unsubscribe string `xml:"unsubscribe,omitempty"`
Post string `xml:"post,omitempty"`
Archive string `xml:"archive,omitempty"`
OtherArchives *[]string `xml:"otherArchives>otherArchive,omitempty"`
}
MailingList defines a pom.xml MailingList
type Notifier ¶
type Notifier struct {
Type string `xml:"type,omitempty"`
SendOnError bool `xml:"sendOnError,omitempty"`
SendOnFailure bool `xml:"sendOnFailure,omitempty"`
SendOnSuccess bool `xml:"sendOnSuccess,omitempty"`
SendOnWarning bool `xml:"sendOnWarning,omitempty"`
Address string `xml:"address,omitempty"`
Configuration Properties `xml:"configuration,omitempty"`
}
Notifier defines a pom.xml Notifier
type Organization ¶
Organization defines a pom.xml Organization
type Parent ¶
type Parent struct {
GroupID string `xml:"groupId,omitempty"`
ArtifactID string `xml:"artifactId,omitempty"`
Version string `xml:"version,omitempty"`
RelativePath string `xml:"relativePath,omitempty"`
}
Parent defines a pom.xml parent
type Plugin ¶
type Plugin struct {
GroupID string `xml:"groupId,omitempty"`
ArtifactID string `xml:"artifactId,omitempty"`
Version string `xml:"version,omitempty"`
Extensions string `xml:"extensions,omitempty"`
Executions *[]PluginExecution `xml:"executions>execution,omitempty"`
Dependencies *[]Dependency `xml:"dependencies>dependency,omitempty"`
Inherited string `xml:"inherited,omitempty"`
Configuration Configuration `xml:"configuration,omitempty"`
}
Plugin defines a pom.xml Plugin
type PluginExecution ¶
type PluginExecution struct {
ID string `xml:"id,omitempty"`
Phase string `xml:"phase,omitempty"`
Goals *[]string `xml:"goals>goal,omitempty"`
Inherited string `xml:"inherited,omitempty"`
}
PluginExecution defines a pom.xml PluginExecution
type PluginManagement ¶
type PluginManagement struct {
Plugins *[]Plugin `xml:"plugins>plugin,omitempty"`
}
PluginManagement defines a pom.xml PluginManagement
type PluginRepository ¶
type PluginRepository struct {
Releases *RepositoryPolicy `xml:"releases,omitempty"`
Snapshots *RepositoryPolicy `xml:"snapshots,omitempty"`
ID string `xml:"id,omitempty"`
Name string `xml:"name,omitempty"`
URL string `xml:"url,omitempty"`
Layout string `xml:"layout,omitempty"`
}
PluginRepository defines a pom.xml PluginRepository
type Pom ¶
type Pom struct {
XMLName xml.Name `xml:"project,omitempty"`
ModelVersion string `xml:"modelVersion,omitempty"`
Parent *Parent `xml:"parent,omitempty"`
GroupID string `xml:"groupId,omitempty"`
ArtifactID string `xml:"artifactId,omitempty"`
Version string `xml:"version,omitempty"`
Packaging string `xml:"packaging,omitempty"`
Name string `xml:"name,omitempty"`
Description string `xml:"description,omitempty"`
URL string `xml:"url,omitempty"`
InceptionYear string `xml:"inceptionYear,omitempty"`
Organization *Organization `xml:"organization,omitempty"`
Licenses *[]License `xml:"licenses>license,omitempty"`
Developers *[]Developer `xml:"developers>developer,omitempty"`
Contributors *[]Contributor `xml:"contributors>contributor,omitempty"`
MailingLists *[]MailingList `xml:"mailingLists>mailingList,omitempty"`
Prerequisites *Prerequisites `xml:"prerequisites,omitempty"`
Modules *[]string `xml:"modules>module,omitempty"`
SCM *Scm `xml:"scm,omitempty"`
IssueManagement *IssueManagement `xml:"issueManagement,omitempty"`
CIManagement *CIManagement `xml:"ciManagement,omitempty"`
DistributionManagement *DistributionManagement `xml:"distributionManagement,omitempty"`
DependencyManagement *DependencyManagement `xml:"dependencyManagement,omitempty"`
Dependencies *[]Dependency `xml:"dependencies>dependency,omitempty"`
Repositories *[]Repository `xml:"repositories>repository,omitempty"`
PluginRepositories *[]PluginRepository `xml:"pluginRepositories>pluginRepository,omitempty"`
Build *Build `xml:"build,omitempty"`
Reporting *Reporting `xml:"reporting,omitempty"`
Profiles *[]Profile `xml:"profiles>profile,omitempty"`
Properties *Properties `xml:"properties,omitempty"`
}
Pom defines pom.xml data
func (*Pom) GetProperty ¶
GetProperty returns the property value of a property
type Prerequisites ¶
type Prerequisites struct {
Maven string `xml:"maven,omitempty"`
}
Prerequisites defines a pom.xml Prerequisites
type Profile ¶
type Profile struct {
ID string `xml:"id,omitempty"`
Activation *Activation `xml:"activation,omitempty"`
Build *BuildBase `xml:"build,omitempty"`
Modules *[]string `xml:"modules>module,omitempty"`
DistributionManagement *DistributionManagement `xml:"distributionManagement,omitempty"`
Properties *Properties `xml:"properties,omitempty"`
DependencyManagement *DependencyManagement `xml:"dependencyManagement,omitempty"`
Dependencies *[]Dependency `xml:"dependencies>dependency,omitempty"`
Repositories *[]Repository `xml:"repositories>repository,omitempty"`
PluginRepositories *[]PluginRepository `xml:"pluginRepositories>pluginRepository,omitempty"`
Reporting *Reporting `xml:"reporting,omitempty"`
}
Profile defines a pom.xml Profile
type Properties ¶
type Properties struct {
Entries Entries
}
Properties defines pom.xml properties
func (*Properties) UnmarshalXML ¶
func (p *Properties) UnmarshalXML(d *xml.Decoder, start xml.StartElement) (err error)
UnmarshalXML unmarshals XML
type Relocation ¶
type Relocation struct {
GroupID string `xml:"groupId,omitempty"`
ArtifactID string `xml:"artifactId,omitempty"`
Version string `xml:"version,omitempty"`
Message string `xml:"message,omitempty"`
}
Relocation defines a pom.xml Relocation
type ReportSet ¶
type ReportSet struct {
ID string `xml:"id,omitempty"`
Reports *[]string `xml:"reports>report,omitempty"`
Inherited string `xml:"inherited,omitempty"`
}
ReportSet defines a pom.xml ReportSet
type Reporting ¶
type Reporting struct {
ExcludeDefaults string `xml:"excludeDefaults,omitempty"`
OutputDirectory string `xml:"outputDirectory,omitempty"`
Plugins *[]ReportingPlugin `xml:"plugins>plugin,omitempty"`
}
Reporting defines a pom.xml Reporting
type ReportingPlugin ¶
type ReportingPlugin struct {
GroupID string `xml:"groupId,omitempty"`
ArtifactID string `xml:"artifactId,omitempty"`
Version string `xml:"version,omitempty"`
Inherited string `xml:"inherited,omitempty"`
ReportSets *[]ReportSet `xml:"reportSets>reportSet,omitempty"`
}
ReportingPlugin defines a pom.xml ReportingPlugin
type Repository ¶
type Repository struct {
UniqueVersion bool `xml:"uniqueVersion,omitempty"`
Releases *RepositoryPolicy `xml:"releases,omitempty"`
Snapshots *RepositoryPolicy `xml:"snapshots,omitempty"`
ID string `xml:"id,omitempty"`
Name string `xml:"name,omitempty"`
URL string `xml:"url,omitempty"`
Layout string `xml:"layout,omitempty"`
}
Repository defines a pom.xml Repository
type RepositoryPolicy ¶
type RepositoryPolicy struct {
Enabled string `xml:"enabled,omitempty"`
UpdatePolicy string `xml:"updatePolicy,omitempty"`
ChecksumPolicy string `xml:"checksumPolicy,omitempty"`
}
RepositoryPolicy defines a pom.xml RepositoryPolicy
type Resource ¶
type Resource struct {
TargetPath string `xml:"targetPath,omitempty"`
Filtering string `xml:"filtering,omitempty"`
Directory string `xml:"directory,omitempty"`
Includes *[]string `xml:"includes>include,omitempty"`
Excludes *[]string `xml:"excludes>exclude,omitempty"`
}
Resource defines a pom.xml Resource