问题标签 [jnr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
302 浏览

java - jnr-ffi:有没有从头文件到java代码的生成工具

是否有从项目jnr-ffi的头文件生成 java 代码的工具。我要为一个 C 项目提供一个 API 大约。1200 个功能。

0 投票
1 回答
158 浏览

fuse - 如何在 jnrfuse 中获取 UID 和 GID

我正在使用 fuse 和 jnrfuse 实现文件系统。有人可以告诉我如何在 jnrfuse 中获取 UID 和 GID 信息吗?

0 投票
1 回答
400 浏览

java - JNR UnsatisfiedLinkError

这个问题可能与这个问题大量其他 UnsatisfiedLinkError 问题有关。

我正在尝试运行以下代码。

代码编译正确但拒绝运行,

(编译步骤)

(运行步骤)

运行时出现此错误

0 投票
2 回答
5239 浏览

java - JNA和JNR有什么区别

根据这里的图片
在此处输入图像描述

两个库都按照相同的原则工作。但我相信他们之间是有区别的。这有什么区别?

0 投票
1 回答
418 浏览

java - 调用 c 函数复制结构后 JNR-FFI 崩溃

我正在尝试使用jnr-ffi与 C 库libzbc交互。第一个函数调用zbc_open起作用并返回一个指向打开设备的指针。然后下一次调用zbc_get_device_info会导致 JVM 崩溃。

原因是什么?如何解决? 我认为错误出现在 zbc 的接口或我的传递参数中,但搜索 JNR 的任何文档在 google 中没有产生任何有用的结果。如果我在结构中省略数组部分,也会发生崩溃。

我使用jnr-fuse项目作为起点,因为我的目标是编写一个 FUSE 文件系统。

pastebin 的崩溃日志

C函数

C 结构 zbc_device_info

JNR接口:

主要功能:

JVM崩溃:

0 投票
1 回答
560 浏览

java - JNR-FFI如何从指针读取结构数组

我正在尝试使用jnr-ffi与 C 库libzbc交互。

有一个功能:

int zbc_list_zones (struct zbc_device * dev, uint64_t 扇区, enum zbc_reporting_options ro, struct zbc_zone ** zone , unsigned int * nr_zones)

如何从参数读回结构数组?

第二个问题:nr_zones 参数声明是否正确?结果整数是负数,应该是正数。我尝试使用ShortByReference,给出了合理的结果,但我认为这是不正确的。

我尝试了以下方法来读取第一个元素,但它不起作用(结果为零):

zbc_zone 结构:

JNR接口:

0 投票
0 回答
1031 浏览

java - Cannsandra 驱动程序和 jnr-Unixsocket - java.lang.UnsatisfiedLinkError:无法加载 FFI 提供程序 jnr.ffi.provider.jffi.Provider

我在我的项目中使用 cassandra 和 jnr-unix 套接字,并且都使用 jnr-ffi。在我的本地没有得到任何错误,但在测试环境中得到错误。

版本是,

从我的代码调用 UnixSocketChannel.open() 时发生错误。

来自层次结构的代码,

完整的跟踪如下。仅当我调用 Unisocket 时才会发生此错误,但其余一切看起来都不错。服务按预期启动,并能够使用驱动程序与 cassandra db 进行通信。不过,我也看到了 cassandra 的踪迹。有点混乱...

错误 :-

在此处输入图像描述

0 投票
1 回答
643 浏览

scala - 如何强制使用特定 jar 中的类并在 build.sbt 中排除另一个 jar 的相同类?

我有两个asm依赖项具有完全相同的类名和不同依赖项包含的项目结构。尽管这些库具有相同的项目结构,但它们具有不同的 Maven 坐标。因此,依赖项覆盖将不起作用。

我的一个依赖项(jnr-ffi)使用了一个org.objectweb.asm.ClassVisitor类。In "org.objectweb" % "asm" % "3.3.1",org.objectweb.asm.ClassVisitor是一个接口,这会引发错误。我需要使用"org.ow2.asm" % "asm" % "5.0.3"' 的实现,org.objectweb.asm.ClassVisitor因为它是一个实际的类。两种实现的罐子都下载到~/.ivy2/cache. 不幸的是,考虑到我的合并策略,我需要的那个没有被使用。

抛出以下错误:

我正在使用sbt0.13.5 和sbt assembly0.14.2 。

我尝试过 exclude "org.objectweb" % "asm" % "3.3.1"。这不起作用:

我还尝试使用以下合并策略

我也试过排除罐子:

我还尝试project/IncludeFromJar.scala“如何从 sbt 程序集中排除重复类?”中的自定义合并策略。. 但IncludeFromJar.scala不会编译,我相信这是因为我在sbt assembly他们的例子中使用了错误的版本。

case PathList("org", "objectweb", "asm", "ClassVisitor.class") => new IncludeFromJar("asm-5.0.3.jar")

因此问题是:如何强制使用特定 jar 中的类并在 build.sbt 中排除另一个 jar 的相同类?

0 投票
1 回答
236 浏览

java - Packet.dll 获取 MAC 地址 (JNR-FFI)

如何使用 jnr-ffi 将下面的函数映射到 java?

BOOLEAN PacketRequest(LPADAPTER AdapterObject,BOOLEAN Set,PPACKET_OID_DATA OidData);

示例(C):https ://github.com/patmarion/winpcap/blob/master/WpcapSrc_4_1_3/Examples/PacketDriver/GetMacAddress/GetMacAddress.c

0 投票
0 回答
396 浏览

docker - 从 Unix 套接字文件中读取

我正在尝试从 /var/run/docker.sock 中读取一些行(或只是一些内容)。基本上我正在尝试将以下内容转换为代码。

我正在使用 jnr.unixsocket 库,我的代码如下

我在哪里“放置” http://localhost/events?上面的代码只是阻塞在 reader.readLine() 上。关于如何阅读事件的任何建议?请注意,我不是被迫使用 JNR。这似乎是最好的选择,但我对其他选择持开放态度。