NodeJS OracleDB未在Bluemix中运行

时间:2017-03-15 22:47:16

标签: node.js oracle compiler-errors ibm-cloud oracledb

在bluemix上执行部署时,尝试使用 oracledb 时会发生错误。遵循错误:

node-oracledb ERR! Error: Cannot find Oracle library libclntsh.so
node-oracledb ERR! Error: See https://github.com/oracle/node-   oracledb/blob/master/INSTALL.md

gyp: Call to 'INSTURL="https://github.com/oracle/node-oracledb/blob/master/INSTALL.md"; ERR="node-oracledb ERR! Error:"; if [ -z    $OCI_LIB_DIR ]; then OCI_LIB_DIR=`ls -d    /usr/lib/oracle/*/client*/lib/libclntsh.* 2> /dev/null | tail -1 | sed -e 's#/libclntsh[^/]*##'`; if [ -z $OCI_LIB_DIR ]; then if [ -z    "$ORACLE_HOME" ]; then if [ -f /opt/oracle/instantclient/libclntsh.so ];       then echo "/opt/oracle/instantclient/"; else echo "$ERR Cannot find Oracle    library libclntsh.so" >&2; echo "$ERR See $INSTURL" >&2; echo "" >&2; fi;    else if [ -f "$ORACLE_HOME/lib/libclntsh.so" ]; then echo    $ORACLE_HOME/lib; else echo "$ERR Cannot find    \$ORACLE_HOME/lib/libclntsh.so" >&2; echo "$ERR See $INSTURL" >&2; echo ""    >&2; fi; fi; else if [ -f "$OCI_LIB_DIR/libclntsh.so" ]; then echo    $OCI_LIB_DIR; else echo "$ERR Cannot find \$OCI_LIB_DIR/libclntsh.so" >&2;    echo "$ERR See $INSTURL" >&2; echo "" >&2; fi; fi; else if [ -f    "$OCI_LIB_DIR/libclntsh.so" ]; then echo $OCI_LIB_DIR; else echo "$ERR    Cannot find \$OCI_LIB_DIR/libclntsh.so" >&2; echo "$ERR See $INSTURL" >&2;    echo "" >&2; fi; fi;' returned exit status 0. while trying to load    binding.gyp
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/opt/IBM/node-v4.2.2-linux-x64/lib/node_modules/npm/node_modules/node-   gyp/lib/configure.js:472:16)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit    
(internal/child_process.js:200:12)
gyp ERR! System Linux 3.13.0-107-generic
gyp ERR! command "/opt/IBM/node-v4.2.2-linux-x64/bin/node" "/opt/IBM/node-v4.2.2-linux-x64/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/pipeline/xxx-7708-xxx-9f5a-xxx/node_modules/oracledb
gyp ERR! node -v v4.2.2
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok 
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2    or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.

它会是什么?万一,Bluemix不支持oracledb?

1 个答案:

答案 0 :(得分:0)

来自GitHub installation notes

  

安装需要Oracle 11.2或12c客户端库。

这就是node-oracledb软件包安装失败的原因。

显然,Bluemix没有它的支持。

关于相关主题的

Comment from Bluemix

  

Bluemix中没有Oracle数据库服务。我们所拥有的是2   MySQL服务。如果访问内部部署的Oracle数据库是什么   您正在寻找,Cloud Integration插件将为您提供。