Aquí es mi método de acuerdo con las observaciones sobre la respuesta de Boris (después de encontrar a mí mismo tener que usar el mismo ayer, pero no puede encontrar el enlace a la respuesta que había usado):
En el directorio del proyecto, crea una carpeta llamada repo
, que usaremos como un repositorio Maven basado en carpetas.
Añadir el siguiente repositorio de archivos a su proyecto pom.xml
:
<repositories>
<repository>
<id>file.repo</id>
<url>file://${project.basedir}/repo</url>
</repository>
</repositories>
Paquete sus clases como un frasco, y desplegarlos en el repositorio de archivos, con el siguiente comando:
mvn deploy:deploy-file
-Durl=file:///absolute/path/to/your-project/repo \
-DrepositoryId=file.repo \
-Dfile=path-to-your.jar \
-DgroupId=some.external.project.group \
-DartifactId=the-artifact-name \
-Dversion=1.0 \
-Dpackaging=jar;
Después de esto simplemente puede agregar una dependencia normal en el jar en su proyecto pom.xml
, usando los valores para groupId, artifactId y la versión que aprobó anteriormente. A continuación, puede agregar la carpeta repo a SVN y confirmar los cambios en su pom.xml
. Cualquier desarrollador que verifique su proyecto ahora podrá usar la misma dependencia sin ningún esfuerzo.
No hay nada elegante acerca de la distribución de las clases compiladas no empaquetadas en primer lugar, me temo. –
Como ha implicado Boris, el almacenamiento de archivos de clase binarios en un repositorio de control de origen es una mala idea. – crowne
@Sean: estoy de acuerdo, pero esta es la situación dada, bastante nueva para mí, debo admitirlo, pero actualmente no hay nada que pueda hacer al respecto. – Tarlog