Here's my approach as per the comments on Boris' answer (after finding myself needing to use the same yesterday, but unable to find the link to the answer I'd used):
In your project directory, create a folder called repo
, which we'll use as a folder based Maven repository.
Add the following file repository to your project pom.xml
:
<repositories>
<repository>
<id>file.repo</id>
<url>file://${project.basedir}/repo</url>
</repository>
</repositories>
Package your classes as a jar, and deploy them to the file repository, with the following command:
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;
Following this you can just add a normal dependency on the jar in your project pom.xml
, using the values for groupId, artifactId and version you passed above. You can then add the repo folder to SVN, and commit the changes to your pom.xml
. Any developer checking out your project will now be able to use the same dependency without any effort.