- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
一直让我对 maven-assembly-plugin 感到疑惑的是 jar-with-dependencies example file在 apache 网站上有关于 jarjar 格式的 TODO 评论。
这只是一个不断被无限期复制的代码产物,还是在示例文件的 TODO 背后有一些实际原因?
最佳答案
文档说明如下
Use jar-with-dependencies as the descriptorRef of your assembly-plugin configuration in order to create a JAR which contains the binary output of your project, along its the unpacked dependencies.
因此 jar-with-dependencies
创建了一个 JAR,其中包含项目的所有类文件以及依赖项的所有解压类文件。
我猜,“jarjar”指的是类似 Spring Boot Maven plugin does 的东西:它也创建了一个单独的 JAR 文件,但是依赖项包含在它们的原始 JAR 文件中,而不是解压。与程序集插件方法相比,这需要自定义类加载器。
但是,您可能应该在 Maven mailing list 上问这个问题.我刚刚这样做了,如果我得到任何新信息,我会更新这个答案。
更新
关于java - 为什么 maven-assembly-plugin 描述符说 <!-- TODO : a jarjar format would be better --> in its example site?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32319304/
我正在使用 Google 的 jarjar 将依赖项重新打包到我的应用程序的 fat jar 中。在运行重新打包的 jar 时,我得到 NoClassDefFoundError 例如: Excepti
我无法从命令行使用 jarjar 将简单的 Scala 程序与 Scala 运行时库结合起来。 jarjar 正确检测依赖关系: $ java -jar ~/Desktop/saug/jarjar-1
我想知道如何运行 JarJar使用 Ant,通过外部规则文件传递规则。 1) 我知道我可以按照下面的规则一一通过: 2) 如果我从命令行运行它,
我已将网络应用程序部署到 Google 应用引擎,我的网络服务使用 jersey 1.14 框架。当我尝试在 GAE 上使用或调用 Web 服务时,我得到一个 java.lang.Incompatib
ninja 构建添加了无效选项 --jarjar。任何指针如何解决这个问题。 以下是错误详细信息: cd ../../ui/gfx; ../../base/android/jni_generator/
是否可以从默认包中移动 jar 中的 .class 文件到另一个命名的包,以便我可以导入和使用它们? 在这里浏览其他问题后,我认为 jarjar 可能正是我要找的,但我不知道如何使用它。 所以我的问题
我正在尝试从源代码构建 AOSP(经过一些修改)但我的构建停止了 [ 0% 1/35196] JarJar: out/target/common/obj/JAVA_LIBRARIES/conscry
我似乎找不到关于如何使用 JarJar 的任何明确说明有一个 Android 项目。 我有一个场景,我的应用程序项目依赖于两个独立的库,它们都恰好使用相同的外部 .jar 文件。如果我尝试编译应用程序
一直让我对 maven-assembly-plugin 感到疑惑的是 jar-with-dependencies example file在 apache 网站上有关于 jarjar 格式的 TODO
我是一名优秀的程序员,十分优秀!