Различный номер сборки в одном модуле опубликовать оценку - PullRequest
0 голосов
/ 19 ноября 2018

В настоящее время у нас есть код публикации для нашего проекта gradle. Цель в зависимости от состояния, мы опубликуем подходящий артефакт.

publications {
            if (project.plugins.hasPlugin('java')) {
                if (!project.plugins.hasPlugin('war')) {
                    // main jar containing compiled production classes
                    classesPublication(MavenPublication) {
                        from components.java
                    }
                } else {
                    // war for web app sub projects
                    warPublication(MavenPublication) {
                        from components.web
                    }
                }
                // Java production source files
                sourcePublication(MavenPublication) {
                    from components.java

                    artifact sourceJar {
                        classifier 'sources'
                    }
                }
            }
            if (project.ext.has('buildTestsJar') && project.ext.buildTestsJar) {
                // jar containing compiled test classes
                testPublication(MavenPublication) {
                    artifact jarTest
                }
                // Java test source files
                testSourcePublication(MavenPublication) {
                    from components.java

                    artifact testSourceJar {
                        classifier 'test-sources'
                    }
                }
            }
        }

Но проблема в том, что когда я его использую, он успешно опубликован, но мы получили другой номер сборки для некоторых банок

Другой номер сборки для тестов и источников jar

Я не знаю, почему это произошло. И когда я объединяю 2 публикации в тестовом состоянии в 1. Таким образом, файл jar для тестов будет иметь тот же номер сборки, что и я, я также не знаю почему.

if (project.ext.has('buildTestsJar') && project.ext.buildTestsJar) {
                // Java test source files
                testSourcePublication(MavenPublication) {
                    from components.java

                    artifact testSourceJar {
                        classifier 'test-sources'
                    }
                    artifact jarTest
                }
            }

тестовые банки имеют одинаковый номер сборки

Пожалуйста, помогите мне объяснить это.

...