谢谢斑竹给的灵感,谢谢magi1201的热心回答,终于解决了。 解决思路: 第一步: 通过JAVA代码加载库文件,然后在Linux下面配置好LD_LIBRARY_PATH路径就可以了。下面贴上我的代码: Servlet的初始化方法中增加加载库文件代码: ListenerLogger.info("准备启动WebService服务"); // ListenerLogger.info("开始加载so文件"); // System.load("WEB-INF/lib/libsigar-amd64-linux.so"); // System.load("WEB-INF/lib/libsigar-x86-linux.so"); // ListenerLogger.info("完成加载so文件"); System.loadLibrary("/usr/lib/sigar-amd64-linux"); System.loadLibrary("/usr/lib/sigar-amd64-linux"); Endpoint.publish("http://10.145.9.67:9443/listenerService",new ListenerServiceImpl()); //192.168.3.37 ListenerLogger.info("已成功启动WebService服务"); 将文件libsigar-amd64-linux.so和libsigar-x86-linux.so放入到/usr/lib下面,但Java加载代码的时候文件名却值得注意,这里就是我之前失败的原因,文件名必须去掉前面的lib和后面的拓展名.so。 第二步: 配置LD_LIBRARY_PATH,指定路径为你的文件所放置的位置,如我放在/usr/lib/下面,所以我配置的方式是: export LD_LIBRARY_PATH=/usr/lib/ 至此,问题解决!
[quote=引用 7 楼 smile_java 的回复:] [quote=引用 6 楼 FoxDave 的回复:] webSphere是不是有什么路径的设定呢?
[quote=引用 6 楼 FoxDave 的回复:] webSphere是不是有什么路径的设定呢?
webSphere是不是有什么路径的设定呢?
[quote=引用 3 楼 smile_java 的回复:] war包没问题,tomcat我在Linux和windows下都试过可以使用,websphere它不是把war包解压,而是变成了ear包,项目servlet可以调用,所以项目是没问题的,只是调用sigar的时候找不到.so文件
war包没问题,tomcat我在Linux和windows下都试过可以使用,websphere它不是把war包解压,而是变成了ear包,项目servlet可以调用,所以项目是没问题的,只是调用sigar的时候找不到.so文件
估计真没多少人遇到过吧 tomcat下能实现,tomcat是windows版的还是linux版的 如果是linux版的,那么放到websphere下面应该是没有什么问题的 打成war包不行,websphere会自动解压war包为文件包吗? weblogic自己不会解压war包,所以在weblogic中的路径问题,在war包中就找不到了 不知道楼主是否遇到这种问题了
2,633
社区成员
9,560
社区内容
加载中
试试用AI创作助手写篇文章吧