0

我正在尝试将我的应用程序在线部署到 Web 服务器上(到目前为止,我一直在使用 heroku,但我对其他服务持开放态度)。

我正在使用IntelliJ并制作了一个 Spring 应用程序(使用 Tomcat 7 运行)。我的应用程序的要求之一是我运行一些C代码。我研究了 JNI,并成功地从我的代码中编译了一个.so库。C

一切都在本地完美运行。为了IntelliJ正确加载.so库,我将它放在bin/目录中IntelliJ(我认为还有一些方法可以使用 VM 选项-Djava.library.pathTomcat指向带有 .so 文件的目录)。

我的问题是:我应该如何继续尝试将我的应用程序放在某个地方,知道我需要 Tomcat 来加载 JNI 库?

4

1 回答 1

0

在 Web 服务器堆栈下使用 JNI 是不明智的;如果任何本机代码炸弹,它将关闭整个 Web 服务器。

如果您绝对需要您的本机代码,另一种方法是将该代码作为独立应用程序运行,并使用暴露的 RMI 接口。

于 2013-09-30T15:47:53.800 回答