linux api 查找窗口,如何查找Java Desktop API在Linux上需要哪些库?

我正在尝试找到一种方法,以确定

Java需要哪些库来支持Desktop API,特别是BROWSE功能.我读了几个指南,错误报告和解决方法,但没有一个工作.

我可以通过安装libgnome2-0和gvfs-backends软件包来使Debian工作.第一个通常被推荐(人们解决相同的问题),第二个是幸运的猜测,因为似乎Desktop API需要vfs.但是,即使安装这两个软件包,我也不能在Ubuntu 14.04上进行这项工作.

所以我的问题是:如何找到Java Desktop API在Linux上需要哪些库?特别是Oracle JDK 8在Ubuntu 14.04上.有可能以某种方式捕获哪些库是桌面API使用或从本机代码获取一些错误输出?

编辑:我创建了一行试图使用浏览器的代码:

public class Main {

public static void main(String[] args) throws URISyntaxException, IOException {

Desktop.getDesktop().browse(new URI("http://www.google.com"));

}

}

我试图运行一个命令来跟踪在执行测试过程中请求的所有文件:

strace -e open,access -f -o browse java -jar BrowseTester.jar

我得到了很多输出,表明java本机和linux本机库正在寻找,查找和访问,但我不知道如何检测实际缺失的内容.

输出示例:

30171 open("/usr/lib/x86_64-linux-gnu/gvfs/tls/x86_64/libgvfscommon.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

30171 open("/usr/lib/x86_64-linux-gnu/gvfs/tls/libgvfscommon.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

30171 open("/usr/lib/x86_64-linux-gnu/gvfs/x86_64/libgvfscommon.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

30171 open("/usr/lib/x86_64-linux-gnu/gvfs/libgvfscommon.so", O_RDONLY|O_CLOEXEC) = 11

我需要一种方法来检测Java Desktop API浏览功能需要哪些本机库.我无法触摸正在调用浏览器的代码.

EDIT2:我试图安装一个新的Ubuntu 14.04与完整的Gnome环境在不同的机器,它的工作原理.不过,我真的希望避免这种情况,因为它增加了1.5GB(大部分)未使用的库.仍然寻找一种方法,如何找到什么Java需要完全或至少某种类型的输出从它失败的地方.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值