Configure the maven site plugin according to the previous article of Baidu Wenku (http://wenku.baidu.com/view/0477e440a8956bec0975e394.html), when the version number is changed from 3.0-beta-3 to 3.0, an error occurs when running mvn site: An API incompatibility was encountered while executing org.apache.maven.plugins:maven-site-plugin:3.0:site. The error details are as follows:
realm = plugin>org.apache.maven.plugins:maven-site-plugin:3.0 strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy urls[0] = file:/Users/nodje/.m2/repository/org/apache/maven/plugins/maven-site-plugin/3.0/maven-site-plugin-3.0.jar urls[1] = file:/Users/nodje/.m2/repository/org/apache/maven/reporting/maven-reporting-exec/1.0.1/maven-reporting-exec-1.0.1.jar urls[2] = file:/Users/nodje/.m2/repository/org/apache/maven/reporting/maven-reporting-api/3.0/maven-reporting-api-3.0.jar urls[3] = file:/Users/nodje/.m2/repository/org/apache/velocity/velocity/1.5/velocity-1.5.jar urls[4] = file:/Users/nodje/.m2/repository/oro/oro/2.0.8/oro-2.0.8.jar urls[5] = file:/Users/nodje/.m2/repository/velocity/velocity/1.5/velocity-1.5.jar urls[6] = file:/Users/nodje/.m2/repository/org/sonatype/aether/aether-util/1.7/aether-util-1.7.jar urls[7] = file:/Users/nodje/.m2/repository/org/sonatype/sisu/sisu-inject-bean/1.4.2/sisu-inject-bean-1.4.2.jar urls[8] = file:/Users/nodje/.m2/repository/org/sonatype/sisu/sisu-guice/2.1.7/sisu-guice-2.1.7-noaop.jar urls[9] = file:/Users/nodje/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar urls[10] = file:/Users/nodje/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar urls[11] = file:/Users/nodje/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar urls[12] = file:/Users/nodje/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar urls[13] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-sink-api/1.2/doxia-sink-api-1.2.jar urls[14] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-logging-api/1.2/doxia-logging-api-1.2.jar urls[15] = file:/Users/nodje/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar urls[16] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-core/1.2/doxia-core-1.2.jar urls[17] = file:/Users/nodje/.m2/repository/xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar urls[18] = file:/Users/nodje/.m2/repository/xml-apis/xml-apis/1.3.04/xml-apis-1.3.04.jar urls[19] = file:/Users/nodje/.m2/repository/org/apache/httpcomponents/httpclient/4.0.2/httpclient-4.0.2.jar urls[20] = file:/Users/nodje/.m2/repository/org/apache/httpcomponents/httpcore/4.0.1/httpcore-4.0.1.jar urls[21] = file:/Users/nodje/.m2/repository/commons-codec/commons-codec/1.3/commons-codec-1.3.jar urls[22] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-module-xhtml/1.2/doxia-module-xhtml-1.2.jar urls[23] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-module-apt/1.2/doxia-module-apt-1.2.jar urls[24] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-module-xdoc/1.2/doxia-module-xdoc-1.2.jar urls[25] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-module-fml/1.2/doxia-module-fml-1.2.jar urls[26] = file:/Users/nodje/.m2/repository/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar urls[27] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-decoration-model/1.2/doxia-decoration-model-1.2.jar urls[28] = file:/Users/nodje/.m2/repository/org/apache/maven/doxia/doxia-site-renderer/1.2/doxia-site-renderer-1.2.jar urls[29] = file:/Users/nodje/.m2/repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar urls[30] = file:/Users/nodje/.m2/repository/org/apache/maven/shared/maven-doxia-tools/1.4/maven-doxia-tools-1.4.jar urls[31] = file:/Users/nodje/.m2/repository/org/codehaus/plexus/plexus-archiver/1.0/plexus-archiver-1.0.jar urls[32] = file:/Users/nodje/.m2/repository/org/codehaus/plexus/plexus-io/1.0/plexus-io-1.0.jar urls[33] = file:/Users/nodje/.m2/repository/org/codehaus/plexus/plexus-i18n/1.0-beta-7/plexus-i18n-1.0-beta-7.jar urls[34] = file:/Users/nodje/.m2/repository/org/codehaus/plexus/plexus-velocity/1.1.8/plexus-velocity-1.1.8.jar urls[35] = file:/Users/nodje/.m2/repository/org/codehaus/plexus/plexus-utils/1.5.10/plexus-utils-1.5.10.jar urls[36] = file:/Users/nodje/.m2/repository/org/mortbay/jetty/jetty/6.1.25/jetty-6.1.25.jar urls[37] = file:/Users/nodje/.m2/repository/org/mortbay/jetty/servlet-api/2.5-20081211/servlet-api-2.5-20081211.jar urls[38] = file:/Users/nodje/.m2/repository/org/mortbay/jetty/jetty-util/6.1.25/jetty-util-6.1.25.jar urls[39] = file:/Users/nodje/.m2/repository/commons-lang/commons-lang/2.5/commons-lang-2.5.jar urls[40] = file:/Users/nodje/.m2/repository/commons-io/commons-io/1.4/commons-io-1.4.jar Number of foreign imports: 1 import: Entry[import from realm ClassRealm[maven.api, parent: null]]
(See: http://comments.gmane.org/gmane.comp.jakarta.turbine.maven.user/123151) Consistent with the error in this article.
According to the above description, the problem may be caused by the change of maven version. The Plugins Compatibility Matrix for Maven 3 has the requirement that maven-site-plugin can use the plugin version under Maven 3. Another problem is that the library (http://wenku.baidu.com/view/0477e440a8956bec0975e394.html) uses: jxr-maven-plugin plugin:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jxr-maven-plugin</artifactId>
</plugin>
Modify it to:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
</plugin>
And confirm whether the plug-in versions of maven-site-plugin under Maven 3 meet the requirements, and run the mvn clean site command again to compile successfully.
In addition, when running mvn site, the warning of " unmappable characters encoding utf-8/gbk" appears, resulting in garbled Chinese characters in the generated apidocs. You need to set the project encoding format to UTF-8 (select the project -> Project - " Properties - " Resource - " Text file encoding - " Other: UTF-8), and configure it accordingly in pom.xml :
1)
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.5</source> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </pluginManagement> </build>
2)
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3)
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0</version>
<configuration>
<locales>zh_CN</locales><outputEncoding>UTF-8</outputEncoding>
............................
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>