Recently prepared to learn to use Tez, so download the latest Tez 0.8.3 source from the official website and follow the installation tutorial to build it. Peacetime use of the cluster environment is offline, this time to also do offline compilation, but a compilation began to report the lack of jar package error, even if the manual download jar package copy to the directory, try to use the MAVEN package installation command, still cannot eliminate errors. Just try to compile in a networked environment (the same environment as the offline cluster environment), and see if the compiled jar can be used properly on the Hadoop offline cluster.
I've never been in touch with Maven before, and there's more information on the web than with Eclipse, as a plugin for eclipse. Time tense, this compilation process I did not spend a lot of time to study the MAVEN principle and complex operations, all the errors encountered in compiling successful Tez as the primary goal, fortunately, the compilation process encountered several problems are network transmission problems, Slightly understand the role of the next Pom.xml file, read the error message to do more to try to solve. This paper mainly records the errors in the compilation process and attempts to successfully resolve the method, in order to record, the cause of the error and the rationale behind the solution.
Compilation Environment:
CentOS 6.5, Maven 3.0.5, Protobuf 2.5.0, Apache tez source 0.8.3
1. Unable to transfer (URL) jar package from Central warehouse (Repository),Return code is:405, Reasonphrase:not allowed. "
The error message is not saved intact, basically means that a jar package cannot be downloaded and a bad return code is indicated. Originally thought that the error code is MAVEN error code, search for a long time no gain, later found that 405 is the attempt to download the jar package when the server returned HTTP error code, that is, the URL in the error message can not be downloaded to the jar package.
You need to change the warehouse settings in the Pom file to add a new, valid remote warehouse address to successfully download the jar package and continue the compilation process.
Under the Tez folder, under the Pom.xml <repositories> tag, copy and paste a new set of <repository>,id and name, and then glue the new repository Web address at the URL.
in an article to see a search MVN components useful site, you can download the jar package directly from the search results, according to the first level domain name of the jar package to get a new valid repository address, the search site is http://search.maven.org/
2. [ERROR] Failed to execute goal COM.GITHUB.EIRSLETT:FRONTEND-MAVEN-PLUGIN:0.0.22:INSTALL-NODE-AND-NPM (Install node and NPM) on project tez-ui:could does download Node.js:Got error code 404 from the server.
&NBSP;
[error] Failed to execute goal com.github.eirslett:frontend-maven-plugin:0.0.22:install-node-and-npm (Install node and NPM) on project tez-ui:could not download Node.js:Got error code 404 from the server. "Help 1][error][error" to see the full stack trace of the errors, re-run Maven with THE-E switch. [ERROR] Re-run Maven using The-x switch to enable full debug logging. [ERROR] [ERROR] For more information on the errors and possible solutions, please read the following articles:[error] [Help 1] http://c Wiki.apache.org/confluence/display/maven/mojofailureexception[error][error] After correcting the problems, can Resume the build with the Command[error] mvn <goals>-rf:tez-ui
The Nodejs installation file cannot be downloaded and the complete error message cannot be obtained when running MVN under the Tez folder. Notice that the error is the compilation of the Child Project Tez-ui errors, go to the Tez-ui folder, execute mvn clean package-dskiptests=true-dmaven.javadoc.skip=true
From the Info section, you can see that an error occurred while trying to download node. The Copy download link opens in the browser can be downloaded, but in the virtual machine in the browser to try to download but returned 404 (obviously the same folder other files can be downloaded normally, weird). The download link to HTTPS can also be downloaded, but the search Tez-ui folder under the article also did not find the node where the download link is set, you cannot change the download method and download link.
Switching ideas, trying to download other versions of node is possible. try changing the version of node in Pom.xml in the Tez-ui directory, change from 0.12.2 to 0.12.3, go back to the Tez directory to perform the compilation again, error resolution.
Tez-ui2 also have a similar problem, the same need to change the Tez-ui2 folder under the Pom.xml file node version, from 0.12.2 to 0.12.3
3.[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.3.2:exec (Bower install) on project Tez-ui:co Mmand execution failed. Process exited with an error:1 (Exit value:1), [Help 1]
[DEBUG] executing command line: [/home/joy/tez/apache-tez-0.8.3-src/tez-ui/src/main/webapp/node/ node, node_modules/bower/bin/bower, install,--remove-unnecessary-resolutions=false]bower filesaver.js# 24b303f49213b905ec9062b708f7cd43d56a5dde enogit git isn't installed or not in the Path[info]--------------------------- ---------------------------------------------[INFO] BUILD Failure[info]----------------------------------------- -------------------------------[INFO] Total Time:41.785s[info] finished At:sat June 05:09:35 PDT 2016[info] Final Memo Ry:9m/22m[info]------------------------------------------------------------------------[ERROR] Failed to execute Goal Org.codehaus.mojo:exec-maven-plugin:1.3.2:exec (Bower install) on Project Tez-ui:command execution failed. Process exited with an error:1 (Exit value:1), [Help 1]
Based on the last output of a row on info
Bower Filesaver.js#24b303f49213b905ec9062b708f7cd43d56a5dde enogit git isn't installed or not in the PATH
Is that git is not installed in the system, and you can install git with yum installed git
Finally compiled successfully, and now not deployed to the offline environment to see if it can run successfully, found a post installation blog, if there is a problem, then record the resolution process.
CentOS 6.5 Maven compiles Apache Tez 0.8.3 pit/Error Resolution record