Pydoop Java home未设置安装问题

Pydoop Java home未设置安装问题,java,python,hadoop,Java,Python,Hadoop,当我回显$JAVA_HOME时,我得到了JAVA的路径。Hadoop也在运行,但pydoop安装由于此错误而失败 Traceback (most recent call last): File "setup.py", line 54, in <module> raise RuntimeError("java home not found, try setting JAVA_HOME") RuntimeError: java home not found, try sett

当我回显
$JAVA_HOME
时,我得到了JAVA的路径。Hadoop也在运行,但pydoop安装由于此错误而失败

Traceback (most recent call last):
  File "setup.py", line 54, in <module>
    raise RuntimeError("java home not found, try setting JAVA_HOME")
RuntimeError: java home not found, try setting JAVA_HOME
回溯(最近一次呼叫最后一次):
文件“setup.py”,第54行,在
引发运行时错误(“未找到java home,请尝试设置java_home”)
运行时错误:未找到java主页,请尝试设置java\u主页

我使用
sudo python setup.py install运行setup命令--跳过构建
。 作为非root用户收到此错误 正在运行的安装 正在运行安装库 创建/usr/local/lib/python2.7/dist-packages/pydoop
错误:无法创建“/usr/local/lib/python2.7/dist packages/pydoop”:权限被拒绝

当您使用sudo运行安装程序时,它在根帐户下运行,其中可能没有定义JAVA_HOME

您可以选择:

  • 导出根目录的正确JAVA_主页
  • 或者使用在当前用户下的虚拟环境中安装pydoop,无需sudo
  • 或者使用安装程序指定不需要根权限的生成和安装目录

  • 阿尔科是对的。如果您在帐户下设置hadoop PATH或JAVA_HOME,则很难直接解决它。为根目录设置所有环境既复杂又不必要

    但您只能在您的帐户下安装pydoop。将其安装到~/.local/lib/pythonX.X/site packtes/pydoop-X.X/。。。路径

    如果下载源tar文件,请使用此命令

    python setup.py install --user
    
    还是这个

    pip install pydoop --user
    

    我在安装pydoop时也遇到了同样的问题,尽管我通过“export JAVA_HOME=myJavaHomePath”正确设置了JAVA_HOME,但仍然收到了相同的错误,即“RuntimeError:JAVA HOME未找到,请尝试设置JAVA_HOME”

    最后,我通过修改jvm.py文件中的函数“def get_java_home()”解决了这个问题,该函数位于路径“/pydoop/pydoop/utils”中,如错误消息所示

    我只是在try子句中注释了行return os.environ[“JAVA_HOME”],并添加了行return“/usr/lib/jvm/JAVA-7-openjdk-amd64”,如下所示/usr/lib/jvm/java-7-openjdk-amd64是我电脑上的java_主页

    def get_java_home():
        try:
            #return os.environ["JAVA_HOME"]
            return "/usr/lib/jvm/java-7-openjdk-amd64"
        except KeyError:
            raise RuntimeError("java home not found, try setting JAVA_HOME")
    

    如何运行安装程序?使用sudo?sudo python setup.py安装--在运行安装时以非root用户身份跳过build运行install_lib creating/usr/local/lib/python2.7/dist-packages/pydoop错误:无法创建“/usr/local/lib/python2.7/dist-packages/pydoop”:权限denied@Aravinth在我的回答中,你读过关于自定义文件夹规范的第二和第三个链接吗?您的错误表明您在
    /usr/local/lib/python2.7/
    中没有权限,这是正常的。@Aravinth当您被此错误困扰时,我断定您是unix新手,因此强烈建议您选择第二个选项,virtual env usage.changed权限现在获取错误:无法复制树“build/scripts-2.7”:不是directory@Aravinth您是否故意指定了
    --跳过构建
    ?好像你没有建造。而
    install
    命令只是将生成的文件复制到所需的位置。而且你似乎缺乏体格。