Windows上的Hadoop生成/安装错误
我正在尝试在Windows x64(8.1和Server 2012 R2)上安装,但目标失败:Windows上的Hadoop生成/安装错误,windows,hadoop,msbuild,building,Windows,Hadoop,Msbuild,Building,我正在尝试在Windows x64(8.1和Server 2012 R2)上安装,但目标失败: [INFO] Apache Hadoop Common ............................... FAILURE [ 37.925 s] 在过去的几天里,我想我遵循了所有教程的步骤,比如,或者。我做了所有的先决条件,但当我在谷歌上搜索时,我的问题的相关条件如下: 设置MSBuild.exe的路径,如:C:\Windows\Microsoft.NET\Framework
[INFO] Apache Hadoop Common ............................... FAILURE [ 37.925 s]
在过去的几天里,我想我遵循了所有教程的步骤,比如,或者。我做了所有的先决条件,但当我在谷歌上搜索时,我的问题的相关条件如下:
- 设置MSBuild.exe的路径,如:C:\Windows\Microsoft.NET\Framework64\v4.0.30319;在小路上
- 将路径设置为
- 安装Microsoft SDK 7.1并使用其Microsoft SDK 7.1 CMD运行
- 已尝试使用Visual Studio 2013生成:hadoop common\src\main\winutils\libwinutils.sln和hadoop common\src\main\winutils\winutils.sln,但由于编译错误,生成失败。VisualStudio2010甚至不想打开它们。我不知道如何纠正编译错误(如果这是个问题)
以下是一些类似的主题:。我主要尝试了所有的建议,但还是失败了 错误
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:11 min
[INFO] Finished at: 2015-07-08T15:18:29+02:00
[INFO] Final Memory: 69M/269M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.3.1:exec (c
ompile-ms-winutils) on project hadoop-common: Command execution failed. Process
exited with an error: 1 (Exit value: 1) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionE
xception
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :hadoop-common
更新2
@tiho的回答解决了上述问题(我非常感谢,因为我已经花了4天时间)。现在,一个新的问题,目标是:
[INFO] Apache Hadoop KMS .................................. FAILURE [ 1.531 s]
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (dist) on project hadoop-kms: An Ant BuildException has occured: java.net.UnknownHostException: archive.apache.org
[ERROR] around Ant part ...<get dest="downloads/apache-tomcat-6.0.41.tar.gz" skipexisting="true" verbose="true" src="http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.41/bin/apache tomcat-6.0.41.tar.gz"/>... @ 5:182 in C:\hadoop-2.7.1-src\hadoop-common project\hadoop-kms\target\antrun\build-main.xml: Unknown host archive.apache.org.
我花了一整天的时间来建造它。。。微软在向后兼容性方面显然有很多问题。如果Hadoop转向更新的工具链,这将有所帮助 以下是我必须执行的关键步骤(除了文档中提到的那些步骤)。这是使用Windows SDK编译器,而不是VS 2010(VS 2010应该可以使用,但我没有尝试过):
MSBUILD:配置错误MSB4146:无法计算属性表达式“$”([MSBUILD]::ValueOrDefault(“$(VCTargetsPath)”,“$(MSBuildExtensionsPath32)\Microsoft.Cpp\v4.0\V120\)”
settings.xml
,还要定义环境变量Maven\u OPTS=-Dmy.proxy.host-Dhttp.proxyPort=my.proxy.port
,否则,在构建过程中的某个时间点会出现超时
请注意,我在构建过程中注意到了大量警告:我怀疑其中一些警告是由使用JavaSDK1.8而不是1.7引起的。然而,在最终看到
构建成功后
我不想再次尝试使用1.7。我已经成功地使用Visual Studio 2015社区版构建了它
我是这样建造的:
我的环境
这是我的购物清单:
- 视窗10
- JDK 1.8.0_51
- Maven 3.3.3
- Findbugs 1.3.9(我没有使用过这个)
- ProtocolBuffer 2.5.0(我这里没有选择最新和最好的,它必须是2.5.0)
- CMake 3.3.0
- Visual Studio 2015社区版
- GnuWin32 0.6.3-安装起来有点痛苦,但cygwin也是
- zlib 1.2.8
- 互联网连接
- JAVA\u HOME=“C:\Program Files\JAVA\jdk1.8.0\u 51”
- MAVEN_HOME=c:\apache-MAVEN-3.3.3
[INFO] Apache Hadoop KMS .................................. FAILURE [ 1.531 s]
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (dist) on project hadoop-kms: An Ant BuildException has occured: java.net.UnknownHostException: archive.apache.org
[ERROR] around Ant part ...<get dest="downloads/apache-tomcat-6.0.41.tar.gz" skipexisting="true" verbose="true" src="http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.41/bin/apache tomcat-6.0.41.tar.gz"/>... @ 5:182 in C:\hadoop-2.7.1-src\hadoop-common project\hadoop-kms\target\antrun\build-main.xml: Unknown host archive.apache.org.
<mkdir dir="downloads"/>
<get dest="downloads/apache-tomcat-6.0.41.tar.gz" skipexisting="true" verbose="true" src="http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.41/bin/apache-tomcat-6.0.41.tar.gz"/>
[INFO] ------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------
[INFO] Total time: 21:05 min
[INFO] Finished at: 2015-07-10T11:33:17+02:00
[INFO] Final Memory: 228M/672M
[INFO] ------------------------------------------------
hadoop-3.0.2-src\hadoop-common-project\hadoop-common\src\main\winutils\winutils.sln
hadoop-3.0.2-src\hadoop-common-project\hadoop-common\src\main\native\native.sln
D:\hadoop-3.0.2-src\hadoop-hdfs-project\hadoop-hdfs-native-client\pom.xml
<condition property="generator" value="Visual Studio 10" else="Visual Studio 15 2017 Win64">
<localRepository>D:/maven_repo</localRepository>
apache-maven-3.5.0\conf\settings.xml
mvn clean package -Pdist,native-win -DskipTests -Dtar -Dmaven.repo.local=D:\maven_repo
@REM CALL "%MSVS%\VC\vcvarsall.bat" %VCVARSPLAT%
SET Platform=x64
SET VCVARSPLAT=amd64
@REM ******************
@REM Forcibly move the Maven local repo
@REM (use short path to avoid 'the command line is too long' error)
SET MAVEN_OPTS=-Dmaven.repo.local=D:\.m2
@REM *******************************************
@REM
@REM Locations of your bits and pieces
@REM
@REM NOTE: cmake is assumed to already be on the
@REM command path
@REM (it's true when you use Native Tools Command Prompt)
SET MAVEN_HOME=%MAVEN_HOME%
SET JAVA_HOME=%JAVA_HOME%
@REM SET MSVS=C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional
SET PROTO_BIN=D:\tools\protoc-2.5.0-win32
SET GIT_HOME=C:\Program Files (x86)\Git
set ZLIB_HOME=D:\tools\zlib-1.2.11
SET PATH=%JAVA_HOME%\bin;%MAVEN_HOME%\bin;%PROTO_BIN%;%GIT_HOME%\bin;%PATH%
@REM CALL "%MSVS%\VC\vcvarsall.bat" %VCVARSPLAT%
d:
cd D:\hdp
D:\hdp\dev-support\win-paths-eg.cmd
mvn package -Pdist,native-win -DskipTests -Dtar