2017-08-02 38 views
1

我有几个模块Maven项目,具有类似于结构的项目:Artifactory的,Maven和与几个模块

project 
    module-1 
    pom.xml 
    module-2 
    pom.xml 
    .. 
    module-N 
    pom.xml 
    pom.xml 

我已经在父pom.xml这是project下定义的Artifactory的Maven插件,就像它在the examples they offer on their website中所做的那样,我也尝试过the example they have in git

我的问题是我不想向Artifactory发布由父pom生成的所有工件,但仅限于某些模块下的那些工件,所以我尝试在标记<publishArtifacts>false</publishArtifacts>的父pom中定义插件,然后定义该插件再次包含我真的想用<publishArtifacts>true</publishArtifacts>进行部署的工件,但是没有部署任何工件。

如果我尝试另一种方式,只是指定我不想在我没有发布的模块上发布Artifacts,它会部署所有忽略该配置。

这应该怎么做使用这个插件?

回答

1

您可以使用pom.xml的artifactory插件部分中的publisher \ excludePatterns来排除发布的工件。

您可以使用通配符声明多个模式,并用逗号分隔每个模式。

例如,如果您正在使用从 样品“https://github.com/JFrogDev/project-examples/tree/master/artifactory-maven-plugin-example

然后,设置你的pom与

<excludePatterns>multi3*.war,multi2*.jar</excludePatterns> 

将被发布到artifactory的排除这些文件。

希望可以帮到...