La construction du site Maven est très lente - rapport de dépendance

La construction du site Maven est très lente - rapport de dépendance

Création d'un site Maven, mais la génération est très lente pour générer le rapport de dépendance.

C:\example_projects\>mvn site
[INFO] Scanning for projects...
[INFO]
[INFO] --------------------------------------
[INFO] Building Maven Webapp 1.0-SNAPSHOT
[INFO] --------------------------------------
[INFO]
//...
[INFO] Generating "Project License" report
[INFO] Generating "Project Team" report
[INFO] Generating "Project Summary" report
[INFO] Generating "Dependencies" report
//...... Hanging here...

1. Trace

Maven le débogue avec l'option-X, lors de la génération du rapport de dépendance, il maintient les connexions ouvertes vers d'autres sites Web.

C:\example_projects\>mvn -X site
//...
http://google-gson.googlecode.com/svn/mavenrepo - Session: Opened
http://google-gson.googlecode.com/svn/mavenrepo - Session: Disconnecting
http://google-gson.googlecode.com/svn/mavenrepo - Session: Disconnected
http://files.couchbase.com/maven2/ - Session: Opened
http://files.couchbase.com/maven2/ - Session: Disconnecting
http://files.couchbase.com/maven2/ - Session: Disconnected
http://repo.maven.apache.org/maven2 - Session: Opened
http://repo.maven.apache.org/maven2 - Session: Disconnecting
http://repo.maven.apache.org/maven2 - Session: Disconnected
http://repository.jboss.org/nexus/content/groups/public/ - Session: Opened
http://repository.jboss.org/nexus/content/groups/public/ - Session: Disconnecting
http://repository.jboss.org/nexus/content/groups/public/ - Session: Disconnected

//... Long list, seem like never end

2. Solution

Le projet ci-dessus utilise trop de bibliothèques tierces (quel projet Java ne le fait pas?), La résolution d'un trop grand nombre de dépendances a entraîné une construction lente. Pour le résoudre, ignorez la génération du rapport de dépendance.

Solution 1
Construisez-le hors ligne avec l'option-o, le rapport de dépendance sera ignoré.

C:\example_projects\>mvn -o site
//...
[INFO] Scanning for projects...
[INFO]
[INFO] --------------------------------------
[INFO] Building Maven Webapp 1.0-SNAPSHOT
[INFO] --------------------------------------
[INFO]
//...
[INFO] Generating "Project License" report
[INFO] Generating "Project Team" report
[INFO] Generating "Project Summary" report
[INFO] Generating "Dependencies" report
[WARNING] The parameter 'dependencyLocationsEnabled' is ignored in offline mode.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.428s
[INFO] Finished at: Thu Jan 09 22:21:53 SGT 2014
[INFO] Final Memory: 52M/706M

Solution 2
Déclare le «maven-project-info-reports-plugin» dans la section de rapport et définitdependencyLocationsEnabled sur false. Lors de la création du site Maven, la génération du rapport de dépendance sera ignorée.

pom.xml

  
    

    
        org.apache.maven.plugins
        maven-project-info-reports-plugin
        2.7

        
          false