nodejs是否支持运行时依赖性?

时间:2017-10-17 04:02:45

标签: node.js

我创建了一个nodejs应用程序。它在我的package.json文件中具有jdbc依赖性。我发现如果目标计算机没有安装jre,我的应用无法启动。由于jdbc只是我应用中的一个可选功能,我想知道是否有办法允许我在没有安装jre的环境中运行该应用。

理想情况下,我想实现这样的逻辑:

1,检测目标机器是否安装jre

2,如果已安装,请启用此功能

3,如果没有,请禁用此功能

所以我需要对nodejs的运行时依赖,以支持这个要求。

1 个答案:

答案 0 :(得分:3)

您的问题分为两部分:

  1. 您能检测到机器是否安装了Java吗?
    是的 - 您可以使用像this这样的代码执行shell命令来确定是否安装了JRE,并可能验证版本。

  2. 您可以在运行时选择性地包含依赖项吗?
    同样是 - 您可以使用if语句,如:

    var jbdc; if(java_installed){ jbdc = require('jbdc'); }

  3. 这就是说,如果您在安装时从jbdc收到错误,那么如果支持Java,您仍然需要手动选择安装jbdc。为此,请将jbdc添加到package.json作为optional dependency