Un problema recurrente en Maven 2 es cómo usar y versionar artefactos que no hay en ningún repositorio público. Se pueden instalar en el repositorio local, o en el privado de la empresa, pero si quieres distribuir el código fuente, éste no va a compilar sin hacer ciertos pasos previos. Una forma de solucionar esto es lo que propongo aquí, y es guardar los jars necesarios en el directorio lib del proyecto que los necesita e instalarlos en el repositorio local durante la fase 'initialize' usando el plugin 'maven-install-plugin'. En mi caso me hizo falta para incluir en mi aplicación el puente PHP/Java.
<plugins>
<
plugin
>
<
!-- Install the JavaBridge JARs in the local maven repository : JavaBridge --
>
<
artifactId
>
maven-install-plugin
<
/artifactId
>
<
executions
>
<
execution
>
<
id
>
install-javabridge-javabridge
<
/id
>
<
phase
>
initialize
<
/phase
>
<
goals
>
<
goal
>
install-file
<
/goal
>
<
/goals
>
<
configuration
>
<
file
>
lib/JavaBridge.jar
<
/file
>
<
groupId
>
net.sourceforge.phpjavabridge
<
/groupId
>
<
artifactId
>
JavaBridge
<
/artifactId
>
<
packaging
>
jar
<
/packaging
>
<
version
>
${phpjavabridge.version}
<
/version
>
<
/configuration
>
<
/execution
>
<
/executions
>
<
/plugin
>
<
/plugins
>
<
properties
>
<
phpjavabridge.version
>
6.1.2.1
<
/phpjavabridge.version
>
<
/properties
>
versions:set
Existe una plugin en Maven para aumentar la versión en todos los módulos de un proyecto multimódulo. Estas son las llamadas que utilizo:
mvn versions:set -DnewVersion=1.2
mvn versions:commit