如何解决Maven 3中的本地工件?

时间:2011-04-22 16:19:04

标签: maven maven-plugin maven-3

如何在Maven 3中解析本地存储库中的工件路径?

在Maven 2中,您可以使用ArtifactResolver使用相关信息填充Artifact对象,但此类已在Maven 3中弃用。

2 个答案:

答案 0 :(得分:3)

ArtifactFactory的最佳替代品(也已弃用M3)为RepositorySystemcreateDependencyArtifact,...操作可用。

答案 1 :(得分:2)

回答我自己的问题:

/**
 * @component
 */
private ArtifactFactory artifactFactory;
/**
 * The local maven repository.
 *
 * @parameter expression="${localRepository}"
 * @required
 * @readonly
 */
private ArtifactRepository localRepository;
[...]
Artifact artifact = artifactFactory.createArtifactWithClassifier(groupId, artifactId, version, type, classifier);
artifact.setFile(new File(localRepository.getBasedir(), localRepository.pathOf(artifact)));