If one of my dependencies didn't deploy relocation poms after changing an
artifactId, what is the best way to manage a dependency tree which includes
a mix of old and new?
Example:
The SWT project exists in two different locations:
<groupId>org.eclipse.swt</groupId>
<artifactId>org.eclipse.swt</artifactId>
see [1]
and
<groupId>org.eclipse</groupId>
<artifactId>swt</artifactId>
see [2]
There are no relocation poms which create a relationship between
org.eclipse.swt:org.eclipse.swt (old) and org.eclipse.swt:swt (new).
Currently, I use org.eclipse.swt:swt and then apply exclusion filters to
remove org.eclipse.swt:org.eclipse.swt dependencies (Method A). Another
team has continued to use org.eclipse.swt:org.eclipse.swt by maintaining an
internal repo which includes newer versions with the old artifactId (Method
B). Which method is recommended? If the SWT team now deploys relocation
poms, will that cause problems for those using Method B?
[1] versions 3.2.0 and 3.2.1 @ http://repo1.maven.org/eclipse/
[2] versions 3.3.0-v3339b, 3.3.0-v3345b and 3.3.0-v3346 @
http://repo1.maven.org/eclipse/,
versions 3.2.1-v3235e and 3.3.0-v3346 @ http://repo1.maven.org/maven2/