我正在寻找一个库或工具包(所以我不必编写它),它将允许我在 Linux 中执行以下常见操作:
- 获取用户名的 uid。
- 获取用户/组成员信息。
- 获取有关磁盘驱动器上可用空间的信息。
- 任何其他可能有用的 API 调用通常在 Java 中不可用,因为它们破坏了可移植性。
有没有人有任何想法?
我正在寻找一个库或工具包(所以我不必编写它),它将允许我在 Linux 中执行以下常见操作:
有没有人有任何想法?
不是任何特定库的包装器,而是JNA(Java 本机访问) “使 Java 程序能够轻松访问本机共享库(Windows 上的 DLL),而无需编写除 Java 代码之外的任何内容”
不需要 JNI 或本机代码。此功能可与 Windows 的 Platform/Invoke 和 Python 的 ctypes 相媲美。访问在运行时是动态的,无需代码生成。
JNA 允许您使用自然 Java 方法调用直接调用本机函数。Java 调用看起来就像在本机代码中一样。大多数调用不需要特殊处理或配置;不需要样板文件或生成的代码。
JNA 库使用小型本地库存根来动态调用本地代码。开发人员使用 Java 接口来描述目标本地库中的函数和结构。这使得利用本机平台特性变得非常容易,而不会产生为多个平台配置和构建 JNI 代码的高开销。
使用 JNA,您应该能够直接调用 Linux API(与从 C 中调用相同)。
至少,POSIX for Java听起来像是一个不错的起点。请记住,您列出的大多数东西都不是“Linux”,它们只是普通的旧 POSIX。