问题标签 [onejar]

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 回答
1666 浏览

java - 将 FatJar 用于本地库

我正在使用 FatJar 创建一个带有 postgresql.jar、jdatepicker.jar 和本机库的 jar。我已将项目合并到一个罐子中。没有 postgresql 和 jdatepicker jar 错误。而且我可以以编程方式加载我的本机库。但我无法加载依赖库。当我放置库 C:\Windows\System32 时,没有加载依赖库错误。但我想从 jar 加载依赖库。我解压缩了我的 fatjar,我可以看到依赖库。但我无法从 jar 中加载。我怎样才能做到这一点 ?

编辑 :

这是我的错误输出:在此处输入图像描述

这是我的类路径:

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

0 投票
0 回答
38 浏览

java - FatJar 临时目录

我的项目中有本机 dll(C++)。我正在使用 Eclipse FatJar 插件来创建 FatJar。我的本机 dll 依赖于其他本机 dll,例如“libopencv_core247”。我知道 FatJar 正在从这个文件夹创建临时文件夹加载依赖库。如果我能找到,我会将 Java 库路径设置为此文件夹。

我可以加载我的库,但出现找不到依赖库错误。

0 投票
1 回答
475 浏览

java - 内罐内的主类

我正在尝试为几个 Java Maven 项目(使用 Eclipse)构建安装程序。我想使用 maven 程序集来生成一个 jar 文件(此后称为 big-fat jar),其中包含所有安装文件(JAR + docs + 其他)以及安装程序 JAR(构建安装程序项目的结果)。我希望安装程序解压缩大 jar,因此我希望将主类包含在安装程序 jar 中。用户将获得 big-fat jar,我希望 java -jar big-fat.jar 执行 installer.jar 中的主要内容。回顾一下,这里是大罐子的结构:

big-fat-jar:
--installer.jar
--application.jar
--readme.doc,
--META-INF:
----MANIFEST.MF

其中installer.jar 是解压big-fat-jar 并包含main 的Java 程序,application.jar 是正在安装的应用程序(可能有多个jar 或wars,而不仅仅是一个application.jar),readme.doc 代表任何文档。我的问题是:当用户执行 java -jar big-fat-jar 时,我该怎么做才能调用主要的 installer.jar?我在其他帖子上读到 OneJar 可能会有所帮助,但我不确定如何表明 main 位于内罐内。

0 投票
1 回答
3789 浏览

kotlin - 在 kotlin func 中使用资源 - 不适用于 fat jar(一个 jar)

我有以下代码:

从 intelliJ 运行时,以下内容可以正常工作并找到资源。但是当使用捆绑的 jar 运行时,它会给出一个NullPointerException.

  • 资源路径:/src/main/resources/merchant.id
  • 代码路径:/src/main/java/Route.kt

以下是 Maven 配置片段:

是否有任何其他战争来获取上述资源的 URL,这将与一个罐子或其他制作胖罐子的方式一起使用。

罐子内容:

一罐内容:

0 投票
1 回答
490 浏览

java - 创建包含 3rd 方 (jar) 库的 java 库

我需要生成一个 jar 文件,该文件将被其他人用作库(我们称之为“myLib.jar”),因此该 jar 不需要是可执行的。该库依赖于其他一些 3rd-party jar,但我不会期望那些使用“myLib.jar”的人将它们包含在他/她的 Buildpath 中。

在搜索时,我找到了 OneJar并按照页面顶部的 2 个步骤进行操作。

不幸的是,这对我不起作用,因为当我尝试在新项目中包含“myLib.jar”时,我无法使用预期的类。


所以...

Q1:OneJar 是否仅适用于可执行 jar?如果不是我怎么能实现我上面描述的。

Q2:如果 OneJar 仅用于可执行文件,是否有另一种方法来生成“myLib.jar”库?


PS:如果需要添加更多信息,请告诉我,以便编辑我的问题。

0 投票
0 回答
555 浏览

java - Executable-jar 在 Mac 上不起作用

我使用 Eclipse 开发了一个小型 Java 应用程序。我使用一个 jar 从它创建了一个可执行 jar。我希望能够在 pc 或 mac 上执行此应用程序。

该应用程序在 pc 上完美执行,但在 mac 上,我收到以下错误消息:

错误信息

one-jar 似乎有一些问题,但为什么它可以在 pc 上工作,但不能在 mac 上工作?你对这个问题有任何想法吗?

我在 pc 和 mac 上都使用 Java 8。

谢谢

0 投票
3 回答
1465 浏览

java - 如何配置 install4j 以运行包含其他 jar 文件的 java 可执行 jar 文件?

我有 java 一个可执行的 jar 文件,其中嵌入了许多其他 jar 文件。它使用simon tuffs onejar来完成此任务。当我双击它时,jar 可以正确运行,或者从命令提示符发出“java -jar myApp.jar”。jar 文件有一个 manifest.mf,其中包含:

Install4j 将此 jar 文件正确复制到我的 bin 文件夹,但它创建的“myApp.exe”无法启动。我得到:

java.lang.ClassNotFoundException: com.ndi.foreCee.programs.MyApp

或者:

java.lang.ClassNotFoundException: com.simontuffs.onejar.Boot

取决于我插入 install4j 的配置 Java 调用页面“主类”的内容。我已将“类路径:”设置为“存档 bin\myApp.jar”。

谁能告诉如何使用嵌入式 jre 配置 install4j 来构建一个只发出“java -jar myApp.jar”的 exe?

0 投票
1 回答
371 浏览

java - 一个 jar,一个类和一个依赖 jar 的主类

我有一个项目,其中包含两个名为Test1Test2的类。

Test1和Test2都不是主类。现在我有一个名为cloudexe.jar的依赖项,它有一个主类ClassExecuter。现在我的问题是我希望ClassExecuter作为test1.jartest2.jar的主类。

test1.jar应该只包含 Test1 类及其所有依赖项,包括cloudexe.jar同样test2.jar应该只包含Test2类及其所有依赖项,包括cloudexe.jar

现在当我的包我的 pom.xml 我得到 test1.jar 和 test2.jar 但我得到如下所示

我的pom.xml在下面给出

谁能帮我解决这个问题

0 投票
2 回答
309 浏览

cassandra - 嵌入 Cassandra - 安全管理器问题

我正在尝试升级使用嵌入式 cassandra 2.1.1 的应用程序(大约是时候了!),但有问题的应用程序设置了它自己的安全管理器。Cassandra 3.11 似乎没有考虑这种可能性,只是尝试自行设置安全管理器,而不考虑可能已经有一个(失败)。

当我浏览 Cassandra 代码时,似乎没有任何配置检查来避免这种情况:

ThreadAwareSecurityManager 中的评论似乎表明这是为了使用户定义的函数安全,但我没有计划使用用户定义的函数,所以我很乐意将其关闭,但我没有看到这样的选项编码。

这看起来很可疑,好像它需要对 Cassandra 进行代码更改才能正常工作。有没有人有更好的主意?

作为参考,这是为了避免旧 cqlsh 在当前版本的 python 中存在的问题:

https://github.com/nsoft/jesterj/issues/89

编辑:尽管我之前安装了安全管理器,但弄清楚为什么会发生异常。事实证明,他们安装了一个策略,该策略使任何不是来自具有以“文件”开头的 url 的代码源的东西都失败。我的应用程序通过 one-jar 加载,因此我所有的代码源都有一个类似的 url:onejar:lib/docopt-0.6.1.jar。因此,当他们尝试安装自己的安全管理器时,他们违反了自己的策略并死了。

0 投票
0 回答
33 浏览

java - OneJar“输入 Java 包名称”

我正在尝试将包含多个其他 JARS 和本机的项目构建到一个胖 jar 中。我被指出使用 onejar 项目,可以在这里找到:http: //one-jar.sourceforge.net

使用命令行运行一个 jar 时,会提示我

我为第一个问题放入了我的 prioject 目录,但我对第二个提示的要求感到困惑。java包名是什么意思?谢谢您的帮助。