问题标签 [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.
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,到目前为止刚刚给我带来了痛苦,但其他人喜欢它。)
java - 我可以在 java 命令行上指定一个 JPA 兼容的 persistence.xml 文件吗?
我有一个包含所有 java 类的 UberJar,但想用外部 persistence.xml 文件执行这个 jar。根据规范,Hibernate(或任何其他 JPA 提供程序)在类路径上的任何 META-INF 文件夹中查找 persistence.xml 文件,但我无法使用 UberJar 完成这项工作。有任何想法吗?UberJar 的类加载器是否仅限于 jar 文件的内容?
java - 是否可以创建一个包含项目类和项目依赖项的“uber”jar 作为带有自定义清单文件的 jar?
我正在尝试创建一个包含项目类的可执行 jar(使用 maven),它与清单文件的依赖项具有主类的条目和指向包装在 jar 根中的依赖项的类路径条目;像这样的东西:
清单文件:
罐:
我正在使用 maven-jar-plugin 创建清单文件,并使用 maven-shade-plugin 创建“uber” jar,但依赖项已解压缩并作为类添加到我的 jar 中。
java - 组装 jar 后 - EntityManager 没有持久性提供程序命名
我正在开发一个独立的应用程序,从我的 ide(intellij 想法)启动它时它工作正常,但是在创建一个 uberjar 并从它启动应用程序之后 javax.persistence.spi.PersistenceProvider 被抛出说“没有名为 testPU 的 EntityManager 的持久性提供程序”
这是我的 persistence.xml,它位于 meta-inf 目录下:
这是我创建实体管理器工厂的方式:
emf = Persistence.createEntityManagerFactory("testPU");
我使用 maven 并尝试了默认配置的组装插件,我没有太多组装 jar 的经验,我不知道我是否遗漏了什么,所以如果你有任何想法,我很高兴听到他们
maven - 在多模块项目中使用 Maven 阴影插件 - NullPointerException
我有一个场景,我需要创建一个包含所有模块及其依赖项的多模块 maven 项目的 uber jar。我尝试使用 Maven 阴影插件。但它似乎只有在我在模块级别使用它时才有效。如果我在父 pom 中添加插件条目,那么构建会中断(它会尝试遮蔽父 pom)
这似乎很有意义,因为<packaging>
父 maven 项目是 pom。但是应该有一些方法可以为多模块项目创建一个 uber jar ......有什么想法吗?
jar - gradle - 如何构建一个带有 lib 目录的 jar,其中包含其他 jar?
在 gradle 中 - 如何将 jar 嵌入到 lib 目录中的构建输出 jar 中(特别是 lib/enttoolkit.jar 和 lib/mail.jar)?
gradle - 使用 Gradle 构建具有依赖项的 jar
我有一个多项目构建,并且我在其中一个子项目中放置了一个构建胖 jar 的任务。我创建了类似于食谱中描述的任务。
运行它会导致以下错误:
原因:您无法更改未处于未解决状态的配置!
我不确定这个错误是什么意思。我还在 Gradle JIRA 上报告了这一点,以防它是一个错误。
clojure - Clojure 符号评估错误
所以我目前有这个代码:
在 Emacs 中执行后C-c C-k
,我得到以下输出:
但是当我这样做lein uberjar
并运行生成的 jar 文件时,我得到一个错误:
所以我有两个问题:
- 为什么 uberjar 的功能与 REPL 不完全相同?
- 我能做些什么来解决这个问题?
maven - Leiningen - 自动删除 *.DSA 和 *.SF 文件的方法 (Clojure Maven)
我正在使用 Leiningen 从多个依赖项中自动创建单个“uberjar”。(对于 Web Start 应用程序)。
一些 jar 文件已签名,并且 uberjar 进程带来了它们的签名文件(与新 jar 不匹配)。我想添加自己的自签名证书并删除旧证书。
leiningen 有没有一种简单的方法来删除这些旧的签名文件(或阻止它们被复制)?我目前正在将其作为手动步骤进行。
clojure - 运行 Leiningen 创建的 JAR 文件
我在文件 project.clj 中有以下代码:
我创建了一个 uberjar:
然后我尝试运行该 uberjar 并收到以下错误:
我在这里做错了什么?