在 WAR 文件中使用 SIGAR API
我从 Hyperic (http://www.hyperic.com/products/sigar) 发现了 Sigar API,它是一个用于 Java 的系统信息和报告 API。它大量使用 JNI 来收集数据,独立版本在 /lib 文件夹中包含 .SO 和 .DLL 文件。
它在独立模式下工作正常,但我想在 WAR 中使用这个库。启动服务器时是否可以在不指定“-Djava.library.path”中的 lib 路径的情况下执行此操作?我希望能够将其捆绑在 WAR 文件中并将其部署到正在运行的服务器中。
谢谢。
I came across Sigar API from Hyperic (http://www.hyperic.com/products/sigar) which is a system information and reporting API for Java. It heavily uses JNI to gather data, and standalone version contains .SO and .DLL files in a /lib folder.
It works fine in Standalone mode, but I want to use this library inside a WAR. Is there anyway to do that without specifying the lib path in "-Djava.library.path" when starting the server? I want to be able to bundle it inside the WAR file and deploy it into a running server.
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我通过以下设置让它工作。
我将所有内容(SO / DLL)文件复制到WAR文件的lib文件夹中。然后我将它部署到 JBoss,它无需任何自定义系统属性设置即可工作。
这是 JBoss 特有的吗?或者我可以在任何兼容 J2EE 的服务器中期待这种行为吗?
I got it working with the following setup.
I copied all the content (SO / DLL) files to WAR file's lib folder. Then I deployed it to JBoss, and it worked without any custom system property setup.
Is this specific to JBoss? or can I expect this behavior in any J2EE compliant server?
我正在为 Sigar 开发一个独立的 java 程序,我需要访问主机信息。我必须使用“java.library.path”变量来加载 JNI 文件。 Sigar API 在内部使用此路径来加载库。
我使用maven配置了这个路径。如果有帮助,您可以参考此处。
谢谢。
I was working on Sigar for a standalone java program where I had requirement to access host information. I had to use 'java.library.path' variable for loading JNI files. This path is used by Sigar APIs internally for loading libs.
I configured this path using maven. You can refer here, if it helps.
Thanks.