问题标签 [uberjar]

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 投票
13 回答
79494 浏览

java - 将发布合并到一个 JAR 文件中的最简单方法

是否有工具或脚本可以轻松地将一堆JAR文件合并到一个 JAR 文件中?一个好处是可以轻松设置主文件清单并使其可执行。

具体案例是一个Java 重组文本工具。我想用类似的东西运行它:

java -jar rst.jar

据我所知,它没有依赖关系,这表明它不应该是一个简单的单文件工具,但下载的 ZIP 文件包含很多库。

如您所见,不需要手动执行此操作在某种程度上是可取的。

到目前为止,我只尝试过 AutoJar 和 ProGuard,它们都相当容易上手。JAR 文件中的常量池似乎存在一些问题。

显然 jrst 有点坏了,所以我会去修复它。Maven 文件显然也被pom.xml破坏了,所以我必须在修复 jrst 之前修复它......我觉得自己像一个错误磁铁 :-)


更新:我从来没有解决这个应用程序,但我检查了基于胖 JAR 的Eclipse的“可运行 JAR 导出向导”。我发现这很容易用于部署我自己的代码。

其他一些优秀的建议可能更适合在非 Eclipse 环境中构建,oss 可能应该使用Ant进行良好的构建。(Maven,到目前为止刚刚给我带来了痛苦,但其他人喜欢它。)

0 投票
2 回答
2183 浏览

java - 我可以在 java 命令行上指定一个 JPA 兼容的 persistence.xml 文件吗?

我有一个包含所有 java 类的 UberJar,但想用外部 persistence.xml 文件执行这个 jar。根据规范,Hibernate(或任何其他 JPA 提供程序)在类路径上的任何 META-INF 文件夹中查找 persistence.xml 文件,但我无法使用 UberJar 完成这项工作。有任何想法吗?UberJar 的类加载器是否仅限于 jar 文件的内容?

0 投票
4 回答
30354 浏览

java - 是否可以创建一个包含项目类和项目依赖项的“uber”jar 作为带有自定义清单文件的 jar?

我正在尝试创建一个包含项目类的可执行 jar(使用 maven),它与清单文件的依赖项具有主类的条目和指向包装在 jar 根中的依赖项的类路径条目;像这样的东西:

清单文件:

罐:

我正在使用 maven-jar-plugin 创建清单文件,并使用 maven-shade-plugin 创建“uber” jar,但依赖项已解压缩并作为类添加到我的 jar 中。

0 投票
3 回答
2227 浏览

java - 组装 jar 后 - EntityManager 没有持久性提供程序命名

我正在开发一个独立的应用程序,从我的 ide(intellij 想法)启动它时它工作正常,但是在创建一个 uberjar 并从它启动应用程序之后 javax.persistence.spi.PersistenceProvider 被抛出说“没有名为 testPU 的 EntityManager 的持久性提供程序”

这是我的 persistence.xml,它位于 meta-inf 目录下:

这是我创建实体管理器工厂的方式:

emf = Persistence.createEntityManagerFactory("testPU");

我使用 maven 并尝试了默认配置的组装插件,我没有太多组装 jar 的经验,我不知道我是否遗漏了什么,所以如果你有任何想法,我很高兴听到他们

0 投票
3 回答
12199 浏览

maven - 在多模块项目中使用 Maven 阴影插件 - NullPointerException

我有一个场景,我需要创建一个包含所有模块及其依赖项的多模块 maven 项目的 uber jar。我尝试使用 Maven 阴影插件。但它似乎只有在我在模块级别使用它时才有效。如果我在父 pom 中添加插件条目,那么构建会中断(它会尝试遮蔽父 pom)

这似乎很有意义,因为<packaging>父 maven 项目是 pom。但是应该有一些方法可以为多模块项目创建一个 uber jar ......有什么想法吗?

0 投票
10 回答
99745 浏览

jar - gradle - 如何构建一个带有 lib 目录的 jar,其中包含其他 jar?

在 gradle 中 - 如何将 jar 嵌入到 lib 目录中的构建输出 jar 中(特别是 lib/enttoolkit.jar 和 lib/mail.jar)?

0 投票
17 回答
192965 浏览

gradle - 使用 Gradle 构建具有依赖项的 jar

我有一个多项目构建,并且我在其中一个子项目中放置了一个构建胖 jar 的任务。我创建了类似于食谱中描述的任务。

运行它会导致以下错误:

原因:您无法更改未处于未解决状态的配置!

我不确定这个错误是什么意思。我还在 Gradle JIRA 上报告了这一点,以防它是一个错误

0 投票
1 回答
2342 浏览

clojure - Clojure 符号评估错误

所以我目前有这个代码:

在 Emacs 中执行后C-c C-k,我得到以下输出:

但是当我这样做lein uberjar并运行生成的 jar 文件时,我得到一个错误:

所以我有两个问题:

  1. 为什么 uberjar 的功能与 REPL 不完全相同?
  2. 我能做些什么来解决这个问题?
0 投票
2 回答
176 浏览

maven - Leiningen - 自动删除 *.DSA 和 *.SF 文件的方法 (Clojure Maven)

我正在使用 Leiningen 从多个依赖项中自动创建单个“uberjar”。(对于 Web Start 应用程序)。

一些 jar 文件已签名,并且 uberjar 进程带来了它们的签名文件(与新 jar 不匹配)。我想添加自己的自签名证书并删除旧证书。

leiningen 有没有一种简单的方法来删除这些旧的签名文件(或阻止它们被复制)?我目前正在将其作为手动步骤进行。

0 投票
2 回答
597 浏览

clojure - 运行 Leiningen 创建的 JAR 文件

我在文件 project.clj 中有以下代码:

我创建了一个 uberjar:

然后我尝试运行该 uberjar 并收到以下错误:

我在这里做错了什么?