首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对本机库使用FatJar

对本机库使用FatJar
EN

Stack Overflow用户
提问于 2015-08-04 12:25:17
回答 1查看 1.8K关注 0票数 0

我使用FatJar来使用postgresql.jar、jdatepicker.jar和本地库创建一个jar。我把项目组合成一个罐子。没有postgresql和jdatepicker错误。而且我可以以编程方式加载我的本机库。但是我不能加载依赖的库。当我放置库C:\Windows\System32 32时,不存在加载相关库错误。但是我想从jar中加载依赖库。我解压缩我的验证码,我可以看到依赖库。但我不能从罐子里装。我该怎么做?

编辑:

这是我的错误输出:

这是我的类路径:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre7">
        <attributes>
            <attribute name="org.eclipse.jdt.launching.CLASSPATH_ATTR_LIBRARY_PATH_ENTRY" value="JavaWinForms"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="lib" path="jdatepicker-1.3.4.jar"/>
    <classpathentry kind="lib" path="postgresql-9.4-1201.jdbc41.jar"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

我的本机库位于/project/lib文件夹中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-04 13:36:06

为了进行过度简化,您可以将Java应用程序的依赖关系看作是两件不同的事情:

  1. 类路径。这包括您的类,以及您正在使用的任何库的jars。
  2. 本机库路径。这包括用于本机代码的资源。

看起来你的第一个设置是正确的,但不是第二个。

如果没有一个JAR,您将使用java.library.path命令行参数指定本机库路径。试着在运行jar时指定这一点。

如果这是可行的,那么您就可以了解One-JAR如何处理本机库。看起来是一个很好的起点。

Google是您的朋友,要了解更多信息,请尝试搜索"java本机库“、"java.library.path”或"onejar本机库“。

更多信息也可以在以下相关问题上找到:

如何将本机库和JNI库捆绑在JAR中?

路径和如何使用它?

无耻的自我推销:你也可以使用我创建的一个叫做JarMatey的工具,它非常类似于一个罐子。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31809315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档