- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 FatJar 创建一个包含 postgresql.jar、jdatepicker.jar 和 native 库的 jar。我已将项目合并到一个 jar 中。没有 postgresql 和 jdatepicker jar 错误。我可以以编程方式加载我的 native 库。但我无法加载依赖库。当我将库放入C:\Windows\System32时,没有加载依赖库错误。但我想从jar加载依赖库。我解压了 fatjar,可以看到依赖库。但我无法从 jar 加载。我该如何做到这一点?
编辑:
这是我的类路径:
<?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 文件夹中。
最佳答案
为了过于简单化,您可以将 Java 应用程序的依赖关系视为两个独立的事物:
看起来您正确设置了第一个,但第二个设置不正确。
如果没有 One-JAR,您需要使用 java.library.path 命令行参数指定 native 库路径。尝试在运行 jar 时指定这一点。
如果可行,那么您可以研究 One-JAR 如何处理 native 库。 This看起来是一个很好的起点。
Google 是您的 friend ,要了解更多信息,请尝试搜索“java native 库”、“java.library.path”或“onejar native 库”。
更多信息也可以在这些相关问题中找到:
How to bundle a native library and a JNI library inside a JAR?
What is LD_LIBRARY_PATH and how to use it?
无耻的 self 推销:你还可以使用我创建的一个名为 JarMatey 的工具。 ,这与 One-JAR 非常相似。
关于java - 使用 FatJar 作为 native 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31809315/
我有一个文件夹($buildDir/some/lib),里面有很多jar。我想创建一个 jar ,其中所有 jar 都在里面但未压缩。我已经尝试了很多事情,但是所有这些都失败了,包括以下一项: tas
我知道这个问题被问了很多,有很多答案,但我仍然明白,为什么呢... 我正在尝试从带有gradle依赖项的projet生成.jar。 我有一个src/main/java/Launcher.java类,其
关于如何从 fatJar 中排除单个文件有很多重复的答案。通常,文件被排除在 META-INF 中,并且由于文件名冲突,或者因为它是从依赖库文件复制的签名,该签名对新创建的 Jar 文件无效。 Mav
我下载了一个使用 Gradle 的项目,将其解压缩,在该目录中打开 cmd 提示符并运行 gradle。我得到以下信息: Y:\cuchaz-enigma-853f818ee7ac>gradle bu
我有一个使用 gradle 脚本生成的胖 jar。当我运行以下命令时发布 gradle 脚本:- java -jar fileName.jar 它正在运行主要方法,一切都很好。然而,当我尝试混淆这个
This question already has answers here: '\r': command not found - .bashrc / .bash_profile [duplicate
我有一个简单的应用程序...但是,即使“hello world”也可以作为示例。我正在使用Gradle Kotlin dsl进行构建。 我已经应用了应用程序插件,并设置了mainClassName,但
我已经这样做好几天了,并尝试了很多东西,但我似乎无法弄清楚这一点。我正在将 intellij 中的多模块项目从 maven 转换为 gradle,其结构如下: com.automation build
我有一个如下所示的 gradle 构建脚本: dependencies { compile project(':common:avro') .... fatJar { manifest {
我正在开发一个java应用程序,它在main方法中启动jetty服务器。当我在我的 i.d.e (STS) 中运行它时,效果很好,但是当我使用 gradle 将其打包为 fatjar 时,服务器启动,
我遇到了一个问题,当尝试运行 jar 时,gradle fatJar/uberJar 导致以下异常: Error: Could not find or load main class com.domh
我正在从事一个使用 log4j2 日志记录的项目。在 intellij 中开发时,一切正常,日志记录按预期完成。 log4j2.xml 通过在启动时通过 intellij 设置传递给 jvm 的 ja
private static HttpHandler createHandler(HttpHandler servletHandler) { return Handlers.path()
我正在使用 FatJar 创建一个包含 postgresql.jar、jdatepicker.jar 和 native 库的 jar。我已将项目合并到一个 jar 中。没有 postgresql 和
这是 how to execute a built fat JAR as a gradle task? 的后续问题我没有足够的分数来提出我的问题作为评论。所以我得再问一遍。这个问题已经在其他格式和场景
我有一个库,要求我使用aspectjweaver jar 指定javaagent。例如。 java -jar -javaagent:/some/location/aspectjweaver-1.8.
据我了解,FatJar 是一个基于 OSGi 框架的 Eclipse 插件。我相信这使得它很难在 OSGi 平台之外使用。此外,查看反编译的 FatJar,它似乎需要大量 OSGi 和 Eclipse
我已经为此寻找解决方案 4 天了,但没有成功, 首先执行正常的 Gradle 构建任务会生成一个很小的 7kB jar 文件,这显然不起作用,然后我为主类添加了 jar 配置: jar {
我想生成一个包含多个模块和依赖项的 Jar。我安装了 FatJar 插件 但出现以下错误: 我的代码: 尝试使用 shadowJar Error:(61, 0) Could not find meth
我正在尝试使用 ShadowJar 构建一个 fatjar。我的应用程序和 gradle 代码如下。我使用 Gradle 5.0 进行构建。当我运行 ./gradlew run 时,代码有效。当我运行
我是一名优秀的程序员,十分优秀!