maven-help-plugin: оцените с помощью выражения ‘project.groupId’, верните ‘org.apache.maven’ вместо ‘com.myproject’ без кода ошибки

#java #maven #maven-3 #maven-help-plugin

#java #maven #maven-3 #maven-help-plugin

Вопрос:

Я хотел бы использовать maven-help-plugin:3.2.0:evaluate для получения информации из моего проекта pom, но результат оказался не таким, как я ожидал.

Пожалуйста, прочитайте редактирование в конце!

Я пытаюсь использовать его после проверки существующей ветки git.

Обычно это работает на большинстве проектов, в первый раз у меня нет никакого решения… Поиск в Интернете дает мне около 900 результатов, поэтому сейчас я понятия не имею. Я пробую это с maven 3.6.2 с AdoptOpenJDK Java 11

mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=project.artifactId

ожидалось myartifact , но получил standalone-pom

mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=project.groupId

ожидалось com.myproject , но получил org.apache.maven

mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=project.artifactId

ожидалось 1.0.0-SNAPSHOT , но получил 1

У кого-нибудь есть идеи?

Как pom.xml указано ниже, я не использую родительский pom в этом проекте.

 <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>com.myproject</groupId>
    <version>1.0.0-SNAPSHOT</version>
    <artifactId>myartifact</artifactId>

    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <sonar.jacoco.reportPath>${project.basedir}/target/jacoco.exec</sonar.jacoco.reportPath>
    </properties>

            <!--
    <distributionManagement>
    ... my dmans
    </distributionManagement>
            -->

            <!--
    <repositories>
    ... my repos
    </repositories>
            -->

    <build>
        <plugins>
            
            <!--
            <plugin>
            ... my plugins which not in org.apache.maven
            </plugin>
            -->

            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.8.5</version>
                <configuration>
                    <append>true</append>
                </configuration>
                <executions>
                    <execution>
                        <id>before-unit-test-execution</id>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                        <configuration>
                            <destFile>${sonar.jacoco.reportPath}</destFile>
                            <propertyName>surefire.jacoco.args</propertyName>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
 
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>3.0.0-M4</version>
                <configuration>
                    <skipTests>${skip.surefire.tests}</skipTests>
                    <groups>unit</groups>
                    <systemProperties>
                        <java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
                    </systemProperties>
                    <argLine>-Xmx2048m -XX:MaxPermSize=256m ${surefire.jacoco.args}</argLine>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

  

Редактировать:

Исходная проблема была решена, потому что имя ветки было неправильным. Итак, правильный вопрос: зачем запускать Maven с этим результатом и почему не останавливаться с кодом выхода с ошибкой?

Спасибо

Комментарии:

1. Является ли это выполнение именно тем выполнением, которое выполняется? Вы работаете в простой командной строке? Вы работаете внутри контейнера? Есть ли у вас этот проект где-нибудь на github или похожий?

2. Привет @khmarbaise Я запускаю его на Дженкинсе, внутри yepp, из моего репозитория git. Команда mvn работает над другим проектом с той же средой, я написал ее в своем первоначальном вопросе.

3. Вы должны выполнить свой запрос по пути, по которому размещен этот файл POM, я думаю, вы выполняете запрос по другому пути POM, который выдает результаты этого артефакта.

4. @ShubhamPathak это был правильный вопрос, который я нашел, спасибо за посещение

Ответ №1:

Извините, ребята, это была моя вина.

Проверяемая ветвь была написана с ошибкой в цитируемом проекте, и я не вижу весь журнал ошибок в этой среде.

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