node-java错误:libjvm.so:无法打开共享对象文件:没有这样的文件或目录 [英] node-java error: libjvm.so: cannot open shared object file: No such file or directory

查看:203
本文介绍了node-java错误:libjvm.so:无法打开共享对象文件:没有这样的文件或目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在下面的节点插件中遇到了一个错误,并打开了一个问题:
插件在这里: https://github.com/joeferner/node-java
的问题在这里: https://github.com/joeferner/node-java/issues/306



我看到一个类似的问题:关于使用rStudio的开发人员解决了这个问题:
libjvm.so:无法打开共享对象文件:没有这样的文件或目录

我在启动我的时候遇到了类似的错误节点应用程序到heroku:

  return process.dlopen(module,path._makeLong(filename)); 
^

错误:libjvm.so:无法打开共享对象文件:没有这样的文件或目录
出现错误(本机)
在Object.Module._extensions。 (module.js:440:18)
在Module.load(module.js:357:32)
在Function.Module._load(module.js:314:12)
在Module.require(module.js:367:17)
在require(internal / module.js:16:19)
在Object。< anonymous> (/app/node_modules/java/lib/nodeJavaBridge.js:31:16)
在Module._compile(module.js:413:34)
在Object.Module._extensions..js(module .js:422:10)
at Module.load(module.js:357:32)


解决方案

看起来您需要像这样设置 JAVA_HOME 环境变量:

  $ heroku config:set JAVA_HOME =/ usr / lib / jvm / java-7 -openjdk-amd64

这是因为您正在使用堆栈JDK(默认JDK)。您也可以通过将jvm-common buildpack添加到您的应用程序来使用自定义JDK(通常是较新版本),该应用程序还会为您设置 JAVA_HOME

  $ heroku buildpacks:清除
$ heroku buildpacks:add https://github.com/heroku/heroku-buildpack-jvm-common
$ heroku buildpacks:add heroku / nodejs

然后重新部署 git push

I am getting an error in the following node-plugin and opened an issue: plugin is here: https://github.com/joeferner/node-java issue is here: https://github.com/joeferner/node-java/issues/306

I see a similar problem that was solved on SO regarding developers who use rStudio: libjvm.so: cannot open shared object file: No such file or directory

I am having a similar error when I launch my node app to heroku:

return process.dlopen(module, path._makeLong(filename));
                 ^

Error: libjvm.so: cannot open shared object file: No such file or directory
    at Error (native)
    at Object.Module._extensions..node (module.js:440:18)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Module.require (module.js:367:17)
    at require (internal/module.js:16:19)
    at Object.<anonymous> (/app/node_modules/java/lib/nodeJavaBridge.js:31:16)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)

解决方案

It looks like you'll need to set the JAVA_HOME environment variable like this:

$ heroku config:set JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"

This is because you are using the stack JDK (the default JDK). You can also use a custom JDK (usually a newer version) by adding the jvm-common buildpack to your app, which will also set JAVA_HOME for you:

$ heroku buildpacks:clear
$ heroku buildpacks:add https://github.com/heroku/heroku-buildpack-jvm-common
$ heroku buildpacks:add heroku/nodejs

Then redeploy with git push.

这篇关于node-java错误:libjvm.so:无法打开共享对象文件:没有这样的文件或目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆