代码之家  ›  专栏  ›  技术社区  ›  erip Jigar Trivedi

如何解决将带有分类器的工件发布到共享pom的GitHub包时的冲突?

  •  0
  • erip Jigar Trivedi  · 技术社区  · 4 年前

    this 问题。

    我有一个项目,它构建了一个依赖于平台的JAR,并根据 os-maven-plugin :

    <modelVersion>4.0.0</modelVersion>
    <groupId>com.github.levyfan</groupId>
    <artifactId>sentencepiece</artifactId>
    <version>0.0.2</version>
    
    
    <build>
        <extensions>
            <extension>
                <groupId>kr.motd.maven</groupId>
                <artifactId>os-maven-plugin</artifactId>
                <version>1.6.1</version>
            </extension>
        </extensions>
        <!-- ... -->
        <plugins>
            <plugin>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.1.0</version>
                <configuration>
                    <classifier>${os.detected.classifier}</classifier>
                </configuration>
            </plugin>
        </plugins>
    </build>
    

    mvn --batch-mode deploy 对于GitHub包,我遇到了一个冲突错误。这是因为这些工件共享一个pom( sentencepiece-0.0.2.pom ),但是JAR工件是由 os-maven-plugin sentencepiece-0.0.2-XYZ.jar

    如何在构建时注入这个插件定义的属性来创建唯一的工件名称?

    0 回复  |  直到 4 年前
        1
  •  1
  •   J Fabian Meier    4 年前

    让我再试一次。

    项目 artifactId version 不能受插件生成的属性的影响。为了影响它们,属性必须在命令行中给出(或者直接在POM中给出)。

    所以我们只剩下分类器了。