Why make donate
Propriétés disponibles dans mavenpom
2009-10-11

Abstract

Cette page décrit l'ensemble des propriétés ajoutés dans mavenpom et disponibles pour tous les projets qui héritent de mavenpom.

Notation: Pour définir l'utilisation d'un propriété du projet, on écrit :

(propriété)

Vue d'ensemble

Propriétés générales du projet

PropriétéValeur par défaut
platformnuiton.org
projectId(project.artifactId)
listId(projectId)
maven.src.dir(project.basedir)/src
maven.gen.dir(project.build.directory)/generated-sources
maven.license.file(project.basedir)/LICENSE.txt

Propriétés de versions

PropriétéValeur par défaut
mavenVersion2.2.1
antVersion1.8.2
nuitonSkinVersion1.1.2

Pour avoir la liste de toutes les dépendances mutualisées dans le projet, aller sur la page des versions supportées.

Chaque dépendance possède une propriété pour définir sa version, afin de vous permettre dans vos poms de pouvoir facilement surcharger la version d'une telle dépendances sans avoir à changer de version de mavenpom.

Propriétélibrarie
commonsBeanutilsVersioncommons-beanutils:commons-beanutils:1.8.3
commonsCollectionsVersioncommons-collections:commons-collections:3.2.1
commonsEmailVersionorg.apache.commons:commons-email:1.2
commonsHttpclientVersioncommons-httpclient:commons-httpclient:3.1
commonsIoVersioncommons-io:commons-io:2.1
commonsJxpathVersioncommons-jxpath:commons-jxpath:1.3
commonsLangVersioncommons-lang:commons-lang:2.6
commonsLang3Versionorg.apache.commons:commons-lang3:3.1
commonsLoggingVersioncommons-logging:commons-logging:1.1.1
commonsPrimitivesVersioncommons-primitives:commons-primitives:1.0
commonsMathVersionorg.apache.commons:commons-math:2.2
guavaVersioncom.google.guava:guava:11.0.2
junitVersionjunit:junit:4.10
log4jVersionlog4j:log4j:1.2.16

Propriétés de versions de plugins

On définit dans le mavenpom beaucoup de versions de plugins. En consultant la page des versions de plugins supportés.

Comme pour les librairies, on définit une propriété pour chaque plugin définit et ceci pour les même raisons.

A noter que si un plugin est aussi un report il est nécessaire dans la partie report de refournir la version du plugin (merci d'utiliser la propriété et non pas une version en dure).

Plugins maven

Propriété (plugins maven)GAV
antRunPluginVersionorg.apache.maven.plugins:maven-antrun-plugin:1.7
assemblyPluginVersionorg.apache.maven.plugins:maven-assembly-plugin:2.3
cleanPluginVersionorg.apache.maven.plugins:maven-clean-plugin:2.4.1
compilerPluginVersionorg.apache.maven.plugins:maven-compiler-plugin:2.3.2
dependencyPluginVersionorg.apache.maven.plugins:maven-dependency-plugin:2.4
deployPluginVersionorg.apache.maven.plugins:maven-deploy-plugin:2.7
earPluginVersionorg.apache.maven.plugins:maven-ear-plugin:2.7
ejbPluginVersionorg.apache.maven.plugins:maven-ejb-plugin:2.3
enforcerPluginVersionorg.apache.maven.plugins:maven-enforcer-plugin:1.0.1
gpgPluginVersionorg.apache.maven.plugins:maven-gpg-plugin:1.4
installPluginVersionorg.apache.maven.plugins:maven-install-plugin:2.3.1
invokerPluginVersionorg.apache.maven.plugins:maven-invoker-plugin:1.5
jarPluginVersionorg.apache.maven.plugins:maven-jar-plugin:2.4
javadocPluginVersionorg.apache.maven.plugins:maven-javadoc-plugin:2.8.1
pluginPluginVersionorg.apache.maven.plugins:maven-plugin-plugin:2.9
pmdPluginVersionorg.apache.maven.plugins:maven-pmd-plugin:2.7.1
releasePluginVersionorg.apache.maven.plugins:maven-release-plugin:2.2.2
remoteResourcesPluginVersionorg.apache.maven.plugins:maven-remote-resources-plugin:1.2.1
resourcesPluginVersionorg.apache.maven.plugins:maven-resources-plugin:2.5
site2PluginVersionorg.apache.maven.plugins:maven-site-plugin:${site2PluginVersion}
site3PluginVersionorg.apache.maven.plugins:maven-site-plugin:${site3PluginVersion}
sourcePluginVersionorg.apache.maven.plugins:maven-source-plugin:2.1.2
surefirePluginVersionorg.apache.maven.plugins:maven-surefire-plugin:2.12
warPluginVersionorg.apache.maven.plugins:maven-war-plugin:2.2

Propriétés de génération de site et reports

PropriétéValeur par défaut
siteSourcesTyperst
scmwebeditorEnabledtrue
piwikEnabledtrue
piwikId -
central.release.home.urlhttp://maven.nuiton.org/central-releases
other.release.home.urlhttp://maven.nuiton.org/other-releases
repository.home.url(other.release.home.url)
scmwebeditorUrlhttp://scmwebeditor.nuiton.org/nuiton-scmwebeditor/scmwebeditor
maven.javadoc.skipfalse
maven.javadoc.quiettrue
ci.host.urlhttp://ci.(platform)/sonar
qa.host.urlhttp://qa.(platform)/jenkins

Propriétés pour les déployements

PropriétéValeur par défaut
snapshot.repository(our.snapshot.repository)
snapshot.servernuiton-nexus-deploy
our.snapshot.repositoryhttp://nexus.nuiton.org/nexus/content/repositories/snapshots
release.repository(other.release.repository)
release.servernuiton-nexus-deploy
other.release.repositoryhttp://nexus.nuiton.org/nexus/content/repositories/others-releases
central.release.repositoryhttp://nexus.nuiton.org/nexus/content/repositories/central-releases
our.site.repositoryscpexe://(platform)/var/lib/redmine-(platform)/project-site/(projectId)

Détails

Détail des propriétés générales du projet

platform

Le host de la plateforme utilisée.

nuiton.org
chorem.org
forge.codelutin.com
labs.libre-entreprise.org

[remonter]

projectId

L'identifiant unique du projet associé.

(project.artifactId)

Note : Sur un multi-module, la propriété doit être surchargé, sinon on se retrouve avec des valeurs héritiés sur les modules fils, ce qui n'est pas correct.
[remonter]

listId

Le préfixe utilisé pour les listes de diffusion.

(projectId)

[remonter]

maven.compile.source

Le niveau de java utilisé dans les sources (par défaut 1.6)
[remonter]

maven.compile.target

Le niveau de java utilisé dans le code compilé (par défaut 1.6)
[remonter]

maven.compile.encoding

Encoding à utiliser dans les sources (par défaut UTF-8)
[remonter]

project.reporting.outputEncoding

Encoding à utiliser dans le site (par défaut UTF-8)
[remonter]

maven.src.dir

Répertoire des sources

(project.basedir)/src

[remonter]

maven.gen.dir

Répertoire de génération

(project.basedir)/target/generated-sources

[remonter]

maven.license.file

Chemin vers la license utilisée dans le projet.

(project.basedir)/LICENSE.txt

[remonter]

Détail des propriétés de versions

mavenVersion

La version de l'api de maven utilisée (principalement dans les plugins maven) : 2.2.1
[remonter]

antVersion

La version de l'api de ant utilisée (principalement dans les modules de tâches ant).
[remonter]

nuitonSkinVersion

La version de notre skin maven-nuiton-skin utilisé pour la génération des sites maven.
[remonter]

commonsEmailVersion

La version de la librairie commons-email.
[remonter]

commonsIoVersion

La version de la librairie commons-io.
[remonter]

commonsLangVersion

La version de la librairie (en version 2) commons-lang.
[remonter]

commonsLang3Version

La version de la librairie commons-lang.
[remonter]

junitVersion

La version de la librairie junit.
[remonter]

log4jVersion

La version de la librairie log4j.
[remonter]

Détail des propriétés de génération de site et reports

siteSourcesType

Le type de fichiers utilisé pour écrire la documentation du site (apt ou rst) (par défaut rst).
[remonter]

central.release.home.url

L'url du dépôt des releases dite central-safe.
[remonter]

other.release.home.url

L'url du dépôt des releases dite none central-safe.
[remonter]

repository.home.url

L'url du dépôt maven de release du projet. Par défault on utilise le dépôt non central safe .

En utilisant le profile central-safe, cette propriété passe à : dépôt central safe
[remonter]

scmwebeditorEnabled

Pour activer (ou déasactiver) la génération des liens scmwebeditors dans les sites générés. (Par exemple, on ne peut pas gérer ces liens sur un svn ssh...).
[remonter]

scmwebeditorUrl

L'url de l'application scmwebeditor qui permet d'éditer le site en ligne.
[remonter]

piwikEnabled Pour activer (ou déasactiver) la génération de l'analyze du site généré via Piwik.
[remonter]

piwikId Pour utiliser un id de site Piwik particulier pour le site générer. Par défaut non renseigné, on utilisera celui de la forge qui héberge le projet.
[remonter]

sonar.host.url

L'url du serveur sonar.
[remonter]

jenkins.host.url

L'url du serveur jenkins.
[remonter]

repository.home.url

L'url de dépôt maven de type release de Code Lutin. Cette propriété est utilisée dans les sites pour les liens de téléchargement.
[remonter]

Détail des propriétés pour les déployements

snapshot.repository

Url du dépôt maven où deployer les snapshots, par défaut : (snapshot.repository).
[remonter]

snapshot.server

Id du serveur à utiliser pour déployer les snapshots, par défault : nuiton-nexus-deploy.\

Note: le serveur doit être défini dans le settings.xml.
[remonter]

our.snapshot.repository

Url du dépôt maven Nuiton où deployer les snapshots.

Valeur par défaut (ne devrait pas être modifiée) :

scpexe://nuiton.org/var/lib/nexus/storage/snapshots

[remonter]

release.repository

Url du dépôt maven où deployer les releases, par défaut : (other.release.repository).
[remonter]

release.server

Id du serveur à utiliser pour déployer les releases, par défaut : nuiton-nexus-deploy.

Note: le serveur doit être défini dans le settings.xml.
[remonter]

other.release.repository

Url du dépôt maven de Nuiton où deployer les releases central-unsafe.

Valeur par défaut (ne devrait pas être modifiée) :

scpexe://nuiton.org/var/lib/nexus/storage/other-releases

[remonter]

central.release.repository

Url du dépôt maven de Nuiton où deployer les releases central-safe.

Valeur par défaut (ne devrait pas être modifiée) :

scpexe://nuiton.org/var/lib/nexus/storage/central-releases

[remonter]

our.site.repository

Url du dépôt maven de Nuiton où deployer les sites.

Valeur par défaut (ne devrait pas être modifiée) :

scpexe://nuiton.org/var/lib/redmine-(platform)/project-site/(projectId)

[remonter]

Produit par Maven