Переключите провайдера git в buildnumber-maven-plugin

При использовании buildnumber-maven-plugin выполнение завершается неудачно, если в %PATH% во время сборки в командной строке:

[ERROR] Failed to execute goal org.codehaus.mojo:buildnumber-maven-plugin:1.4:create (default) on project test: Cannot get the revision information from the scm repository :
[ERROR] Exception while executing SCM command. Error while executing command. Error while executing process. Cannot run program "git" (in directory "C:\dev\test"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden

Однако при выполнении той же сборки через Eclipse Run as -> Maven clean verify, идентификатор фиксации может быть получен.

Поскольку он работает в затмении, я попытался использовать maven-scm-provider-jgit вместо maven-scm-provider-gitexe с buildnumber-maven-plugin, но, видимо, я не правильно его настроил.

Это соответствующая часть моего pom.xml:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>buildnumber-maven-plugin</artifactId>
    <version>1.4</version>
    <executions>
        <execution>
            <phase>validate</phase>
            <goals>
                <goal>create</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <doCheck>false</doCheck>
        <doUpdate>false</doUpdate>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>org.apache.maven.scm</groupId>
            <artifactId>maven-scm-provider-jgit</artifactId>
            <version>1.9.4</version>
        </dependency>
    </dependencies>
</plugin>

Как я могу переключиться на maven-scm-provider-jgit ?

1 ответ

Решение

buildnumber-maven-plugin Нужно знать, какой Git-провайдер использовать. Следующая конфигурация изменяет провайдера git на jgit,

Нужно использовать хотя бы версию 1.9.5 из maven-scm-provider-jgit, поскольку InfoCommand не реализован в 1.9.4,

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>buildnumber-maven-plugin</artifactId>
    <version>1.4</version>
    <executions>
        <execution>
            <phase>validate</phase>
            <goals>
                <goal>create</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <doCheck>false</doCheck>
        <doUpdate>false</doUpdate>
        <providerImplementations>
            <git>jgit</git>
        </providerImplementations>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>org.apache.maven.scm</groupId>
            <artifactId>maven-scm-provider-jgit</artifactId>
            <version>1.9.5</version>
        </dependency>
    </dependencies>
</plugin>
Другие вопросы по тегам