Thank you Kumar, It works! How about the second Question: I add an archive file (*.tar.gz) by using ADD ARCHIVE *.tar.gz, it seems that this file is not unarchived automatically. I am also confused.
------------------ ???????? ------------------ ??????: "Manoj Kumar"<man...@bigzetta.com>; ????????: 2020??4??15??(??????) ????2:00 ??????: "Xiaobin"<czwangxiao...@foxmail.com>; ????: "user"<user@hive.apache.org>; ????: Re: loading native library in hive UDF Hi, Maybe you can try adding native libraries (*.so) files along with its all dependent libs (*.so) in hadoop-{version}/lib/native $ld libcustom.so --> should show all shared libs resolved from local hadoop-{version}/lib/native folder Above path is shared across the hadoop ecosystem and make sure to add so with its all dependent libs on all nodes . On Wed, Apr 15, 2020 at 7:23 AM Xiaobin <czwangxiao...@foxmail.com> wrote: Hi, all: I'm a beginner of hive. Recently I want to implement a UDF in hive and this function is code with java but call some method written in C++. So my UDF need to load some native libraries (*.so). I have already added the so to hive by using Add file *.so. But it seems that hive doesn't add these so to the LD_LIBRARY_PATH automatically, thus, UDF throws 'no so in java.library.path' exception. I have almost searched the whole internet but got nothing helpful. Have you got any idea of this? By the way, I add an archive file (*.tar.gz) by using ADD ARCHIVE *.tar.gz, it seems that this file is not unarchived automatically. I am also confused. Thank you. Best BIN -- Regards,Manoj Kumar