问题标签 [java-native-library]

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 投票
1 回答
1297 浏览

java - 将本机库导出到 Eclipse 中的外部包不起作用。是虫子吗?

我正要向 Eclipse 报告一个但是,但我想先在这里给这个机会:

如果我添加一个外部包,应用程序找不到引用的本机库,除非在下面指定的情况下:

如果我的工作区由单个项目组成,并且我从项目文件夹之外的文件夹中导入外部包“EX_package.jar”,则可以通过以下方式将文件夹分配给本机库位置:

将鼠标悬停在包上 -> 右键单击​​ -> 属性 -> 本机库 -> 输入您的文件夹。

这不起作用。在运行时应用程序不加载库, System.mapLibraryName(Path) 也不起作用。

此外,如果我创建一个用户库,并将包添加到其中并为本地库定义一个文件夹,它仍然没有。

如果它对您有用,那么我有一个重大错误,因为它在我的计算机上不起作用开始记住,没有任何效果,我玩了几个小时,并有一位同事试图帮助我,但我们俩都空了。

此外,如果我有一个主要项目依赖于我的工作区中的其他几个项目,并且它们都需要使用相同的“EX_package.jar”,我必须提供一个硬拷贝到每个项目中,它只会(我可以不要强调唯一性,我被这个吓坏了!!

也没有奏效。

请告诉我有一个解决方案,这让我发疯......

更新:

如果有人想为他们自己尝试这个,您可以尝试使用 JMF.jar 并在我的 XP 上引用本机 dll 或 jmf.properties 文件,我指的是 dll 文件,我不需要 jmf .properties 文件。

谢谢,亚当泽哈维。

0 投票
1 回答
15505 浏览

java - 如何使用 JMF 捕获视频,但无需安装 JMF

我正在处理的一个视频会议项目使用 JMF 来捕获视频和音频,并将其传输到另一个端点。一个问题是我的团队不希望产品的用户必须安装 JMF。

我认为分享我们对这个问题的解决方案可能是值得的。有用。它运作良好。我的问题是:有没有人有更好的方法来做到这一点?

环境:Windows、XP及以上

  1. 下载适用于 Windows 的 JMF
  2. 将其安装在您的机器上

  3. dlljmf安装后在system32文件夹中找到以下s:

    jmacm.dll
    jmam.dll
    jmcvid.dll
    jmdaud.dll
    jmdaudc.dll
    jmddraw.dll
    jmfjawt.dll
    jmg723.dll
    jmgdi.dll
    jmgsm.dll
    jmh261.dll
    jmh263enc.dll
    jmjpeg.dll
    jmmci.dll
    jmmpa.dll
    jmmpegv.dll
    jmutil. dll
    jmvcm.dll
    jmvfw.dll
    jmvh263.dll
    jsound.dll

  4. dlls 复制到临时文件夹中

  5. 找到jmf.properties文件(在您的计算机上搜索它)
  6. 下载 JMF 源代码
    在源代码中,找到以下文件:

JMFinit.java
JMRPropertiesGen.java
Registry.java
RegistryGen.java

  1. 创建一个包;我会打电话的JMFNoInstall
  2. 添加步骤 6 中列出的文件
  3. 将一个名为 Main 的类添加到此包中,如下所示:

 

jmf.properties文件需要与包含您的main方法的类位于同一文件夹中,或者与包含该main方法的 JAR 存档位于同一文件夹中。s 需要进入
文件夹。您可以让程序检查它们是否在文件夹中。如果不是,您可以让它从某个位置复制它们。每当上面列出的类运行时,该文件就会更新。您只需要运行一次,第一次运行程序,或者如果用户想添加新的捕获设备。最后,只需确保文件和dllwin32win32jmf.propertiesMainjmf.jarjmfcom.jar随 Windows JMF 下载一起提供的文件包含在类路径中。你现在可以走了。无需实际安装即可使用 JMF 的所有功能。

与此相关的工作实际上并不多,您可以很容易地将其合并到您的自定义安装程序中。

有没有人找到更好的方法来做到这一点?这样做有一些陷阱。

编辑:我认为分享我创建的一些代码可能是值得的。当然你需要修改它来处理你的事情。它可能无法编译,但是缺少的东西应该很容易重新创建。但认为这可能是帮助人们的一个很好的起点。detectCaptureDevices 函数可能对大多数人都有帮助。我会在我去的时候更新这门课。

DeviceFinder.java

0 投票
1 回答
296 浏览

java - 如何在我的 JAR 中捆绑包含原生库的库?

我在 Netbeans 6.8 中创建了一个项目,并添加了一个第三方库,其中包括一些本地库。当我为我的项目制作 JAR 时,只包含了第三方 JAR;它的本机库不是。因此,我无法运行我的项目。

我该如何解决这个问题?

0 投票
2 回答
11314 浏览

java - 本机库,错误:此 Java 实例不支持 32 位 JVM

你好 stackoverflow 社区,

我正在使用 NetBeans IDE 7.2.1,并且正在尝试使用本机库编译+运行项目。我的库需要 32 位 JVM。我正在运行 Windows 7 64 位。在尝试编译+运行我的项目时,我遇到了以下情况:

我已尝试进行配置并包含以下参数(无济于事):

我安装了 64 位 JRE 和 32 位 JRE,并且在我的平台管理器中同时提供了 64 位 JDK 和 32 位 JDK。

有什么建议可以解决这个问题吗?我读过你可以通过在 32 位 JRE 之前安装 64 位 JRE 来解决问题;这是其中一个问题吗?(我确实先安装了64位)

0 投票
1 回答
67 浏览

eclipse-plugin - 从 Eclipse 插件的项目文件夹中的 .so 文件调用方法

我为 Eclipse 开发了一个插件,它必须访问本机库。

插件是否必须驻留 .so 文件/usr/lib才能访问它?除非它在那里,否则我的插件无法访问其中的方法。我需要我的插件来访问 .so 本身,这样即使我部署了插件,它也应该可以在没有任何配置更改的情况下工作。我曾经System.loadLibrary()加载 .so 但即使我使用其完整路径加载库System.load(),除非我将 .so 文件复制到 .so 文件,否则它也不起作用/usr/lib

如何让我的插件从它自己的源文件夹中访问它?

0 投票
2 回答
2938 浏览

java - UnsatisfiedLinkError:库加载但我仍然收到链接错误

我有两个 Eclipse 插件:

  • plugin-1:为其他插件提供 .jar 包。(用于 C++ 库的 Java 包装器)此插件是通过单击现有 JAR 档案中的文件->新建->其他->插件创建的。

  • plugin-2:拥有plugin-1的本地库.so(Bundle-NativeCode指令在MANIFEST.MF中)并从plugin-1实例化一个类

(我实际上尝试将 .so 放在 plugin-1 中,但我似乎无法加载库,即使在 plugin-1 MANIFEST.MF 中使用 Bundle-NativeCode 指令,在包含 .so 的插件项目之外,所以我想我必须将 .so 与任何使用 plugin-1 的插件捆绑在一起。)

我正在从插件 2 运行 JUnit 测试,它从插件 2 实例化,而插件 2又从插件 1MyClass实例化。成功加载本机库并实例化,而不会从本机库的加载或从实例化中引发其他异常。在这种情况下,我没有运行插件——只是 JUnit 测试。MyLibraryClassMyClassMyLibraryClassUnsatisfiedLinkErrorMyLibraryClass

当我运行 plugin-2 (使用产品配置)并实例化MyClass时,本机库加载正常,但我得到一个UnsatisifiedLinkErrorwhen MyClassinstantiates MyLibraryClass在这种情况下,我相信该库是根据我使用发布如何获取已加载的 JNI 库列表中描述的类获得的输出加载的?

注意:我使用的是 Eclipse 3.6.1。

这是一个代码示例,它显示了我正在尝试做的事情的本质: package com.mylibrary;

0 投票
1 回答
127 浏览

java - 您将 Web 应用程序的本地库放在哪里(在 Caucho Resin 中)?

Web 应用程序的本地库在哪里,以便 Resin 加载它们?

0 投票
1 回答
53 浏览

java - 为什么 eclipse mars 显示 NativeLibrary 和 Native 的错误?

我想使用 github 的 vlcj 播放器播放音频和视频。

为此,我参考了 youtube 上的视频教程。在视频教程中,他们需要使用 NativeLibrary 和 Native。但是我的 Eclipse IDE 在下面的两行代码中都显示了错误:

0 投票
2 回答
442 浏览

java - Aparapi, java.lang.UnsatisfiedLinkError: libaparapi_x86_...找不到依赖库

我尝试在 4 台计算机上运行我的 aparapi java 程序。2 台计算机可以完美运行,但其他 2 台计算机抛出java.lang.UnsatisfiedLinkError

`

`

0 投票
1 回答
37 浏览

java - java中的汇编代码内联以及如何区分java中的32位和64位操作系统

我需要用 Java 代码为我大学的任务编写一些程序集注入。我有一个具有本机功能的课程

然后我使用命令 javac -h AsmOR.java 编译了这个类,我得到了标题。

我用汇编这个汇编代码,但我不明白为什么函数的参数是r8和r9。我试图阅读 javadoc,但它没用。

另外,我想使用协处理器进行双倍求和,但它不起作用。

如何做到这一点以及如何区分系统的32位和64位版本并根据版本加载dll库?