[ 
https://issues.apache.org/jira/browse/MENFORCER-311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16546104#comment-16546104
 ] 

Petr Hribal edited comment on MENFORCER-311 at 7/17/18 7:01 AM:
----------------------------------------------------------------

Hi [~khmarbaise], thank-you for the quick reply.

 

*Logs for Maven 3.3.9*

I've attached the requested log for Maven 3.3.9.

*Regarding the scm configurations*

We have defined somewhere in the <pluginManagement> section of our parent 
module the default conf. for the plugin, which looks like:
{code:java}
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-scm-plugin</artifactId>
  <version>1.9.5</version>
  <configuration>
    <connectionType>developerConnection</connectionType>
    <!-- Currently not working correctly, workaround see below -->
    <scmCheckWorkingDirectoryUrl>true</scmCheckWorkingDirectoryUrl>
  </configuration>
</plugin>
{code}
And then in the child module (the one, we have problems with), we just assign 
the plugin's execution to specific phase
{code:java}
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-scm-plugin</artifactId>
  <executions>
    <execution>
      <id>scm-validate</id>
      <phase>validate</phase>
      <goals>
        <goal>validate</goal>
      </goals>
    </execution>
  </executions>
</plugin>
{code}
I checked the effective pom and Maven merges those two pieces to a final 
composition, which seems to be correct:
{code:java}
      <plugin>
        <artifactId>maven-scm-plugin</artifactId>
        <version>1.9.5</version>
        <executions>
          <execution>
            <id>scm-validate</id>
            <phase>validate</phase>
            <goals>
              <goal>validate</goal>
            </goals>
            <configuration>
              <connectionType>developerConnection</connectionType>
              <scmCheckWorkingDirectoryUrl>true</scmCheckWorkingDirectoryUrl>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <connectionType>developerConnection</connectionType>
          <scmCheckWorkingDirectoryUrl>true</scmCheckWorkingDirectoryUrl>
        </configuration>
      </plugin>
{code}
*Source code*

Unfortunatelly, there is no way, how to get the module running out of our 
infrastructure due to a lot of internal dependencies. But, I'll provide you an 
example 

*Parameters I have used to call Maven*

I've just opened command line and executed literally _mvn clean install_


was (Author: petrhribal):
Hi [~khmarbaise], thank-you for the quick reply.

 

*Logs for Maven 3.3.9*

I've attached the requested log for Maven 3.3.9.


*Regarding the scm configurations*

We have defined somewhere in the <pluginManagement> section of our parent 
module the default conf. for the plugin, which looks like:
{code:java}
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-scm-plugin</artifactId>
  <version>1.9.5</version>
  <configuration>
    <connectionType>developerConnection</connectionType>
    <!-- Currently not working correctly, workaround see below -->
    <scmCheckWorkingDirectoryUrl>true</scmCheckWorkingDirectoryUrl>
  </configuration>
</plugin>
{code}
And then in the child module (the one, we have problems with), we just assign 
the plugin's execution to specific phase

 
{code:java}
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-scm-plugin</artifactId>
  <executions>
    <execution>
      <id>scm-validate</id>
      <phase>validate</phase>
      <goals>
        <goal>validate</goal>
      </goals>
    </execution>
  </executions>
</plugin>
{code}
I checked the effective pom and Maven merges those two pieces to a final 
composition, which seems to be correct:

 

 
{code:java}
      <plugin>
        <artifactId>maven-scm-plugin</artifactId>
        <version>1.9.5</version>
        <executions>
          <execution>
            <id>scm-validate</id>
            <phase>validate</phase>
            <goals>
              <goal>validate</goal>
            </goals>
            <configuration>
              <connectionType>developerConnection</connectionType>
              <scmCheckWorkingDirectoryUrl>true</scmCheckWorkingDirectoryUrl>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <connectionType>developerConnection</connectionType>
          <scmCheckWorkingDirectoryUrl>true</scmCheckWorkingDirectoryUrl>
        </configuration>
      </plugin>
{code}
 

*Source code*

Unfortunatelly, there is no way, how to get the module running out of our 
infrastructure due to a lot of internal dependencies. But, I'll provide you an 
example

 

 

*Parameters I have used to call Maven*

I've just opened command line and executed literally _mvn clean install_

> enforce-dependency-rules performance dropdown for maven 3.5.x
> -------------------------------------------------------------
>
>                 Key: MENFORCER-311
>                 URL: https://issues.apache.org/jira/browse/MENFORCER-311
>             Project: Maven Enforcer Plugin
>          Issue Type: Bug
>          Components: Plugin, Standard Rules
>    Affects Versions: 1.4.1
>         Environment: Linux OS, Debian Jessie, 64bit
> Oracle Java 1.8.0_144
> Maven 3.5.4
>            Reporter: Petr Hribal
>            Priority: Critical
>         Attachments: logs.339.zip, logs.zip
>
>
> Hi guys, since we have started using Maven 3.5.x (3.5.0, 3.5.2, 3.5.4) on our 
> project, we're experiencing significant performance dropdown of our build 
> process. It is mainly caused by maven-enforcer-plugin, which we use to 
> enforce dependency rules.
> I run the maven with -X debug option and based on that, I can say it spends 
> all the time analyzing project dependencies.
> See the attached logs.
> The build on Maven 3.3.9 takes round about 30s, but on 3.5.x it is almost 
> 7mins.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to