草庐IT

hadoop - maven-shade-plugin 与 maven-assembly-plugin

我使用spring-data-hadoop编写了一个hadoopMR作业,并使用maven-shade-plugin打包了所有必要的jar。但是当我从comandline:hadoopjar运行作业时,它给了我ExceptionforClassNotFoundforthespring-beans。导致加载spring应用程序上下文时出现问题。在我使用maven-assembly-plugin并将所有必需的jar打包到一个lib文件夹之后。这次成功了。我不明白为什么maven-shade-plugin失败了。谁能帮助我理解我的观察结果。 最佳答案

java - 为什么使用 maven shade 插件重定位不起作用?

我有sometrouble运行的Hadoop作业包含比Hadoop发行版(CDH5.2)中包含的版本更新的Guava版本。这是一个已知问题。我试着解决它byshadingthelibraries使用Maven阴影插件。因此,我将以下几行添加到我的pom.xml中:org.apache.maven.pluginsmaven-shade-plugin2.3packageshadecom.googlethirdparty.com.google不幸的是,阴影似乎不起作用。当我提取uber-JAR时,没有文件夹thirdparty/com/google但仍然是文件夹com/google。有人知道

java - 如何从 shaded jar 中排除 *.DSA 和 *.SF 文件?

我在pom.xml中有一个部分*:*META-INF/*.SFMETA-INF/*.DSA我想从最终jar中排除*.SF和*.DSA文件。但我收到以下消息:[INFO]Noartifactmatchingfilter*:*不排除文件。有谁知道如何克服它? 最佳答案 其实你可以在不需要指定groupid的情况下进行全局过滤,你只需要使用正确的通配符语法。例如,如果您想从jar中排除所有*.RSA文件,请将artifactId指定为*:*:*:**:*:*:**.RSA 关于java-如何从

java - Netbeans:项目主要 Artifact 通过maven-shade-plugin处理

我正在使用maven-shade-plugin构建我的项目,Netbeans8.0提示以下警告:Project'smainartifactisprocessedthroughmaven-shade-pluginWhenthefinalartifactjarcontainsclassesnotoriginatingincurrentproject,NetBeansinternalcompilercannotusethesourcesoftheprojectforcompilation.Thenchangesdoneinproject'ssourcecodeonlyappearsindep

java - 如何在多模块项目中配置 Maven shade 插件?

我一直在尝试使用MavenShadePlugin获取jar,但我仍然没有成功。这是我的项目结构:MainModule-Module1-src-pom.xml-Module2-src-pom.xml-pom.xml模块1(pom.xml):MainModulecom.plugintest1.0-SNAPSHOT4.0.0Module1模块2(pom.xml):MainModulecom.plugintest1.0-SNAPSHOT4.0.0Module1主模块(pom.xml):com.plugintestMainModulepom1.0-SNAPSHOTModule1Module2or

java - 缺少 Maven Shade JavaFX 运行时组件

我正在尝试使用maven依赖项创建一个JFX11自包含jar。从我所做的研究来看,似乎最好的方法是通过mavenshade插件。但是,当我运行它时,我得到了这个错误:错误:JavaFX运行时组件丢失,是运行此应用程序所必需的我不明白为什么会这样。我在搞砸什么?有一个更好的方法吗?我也尝试过使用相同消息的maven程序集插件。pom文件供引用4.0.0ApplicationMainjar1.0-SNAPSHOTSpaceRunnerhttp://maven.apache.orgorg.openjfxjavafx-controls11org.apache.maven.pluginsmave

java - 如何使用 Maven "shade"插件将 Apache CXF 应用程序打包成一个整体 JAR

我正在编写一个基于控制台的Java应用程序,旨在由cron以批处理方式运行。批处理应用程序使用适用于JAX-WS的ApacheCXF框架调用SOAPWeb服务。为了使部署更容易,并防止CLASSPATH问题,我想将应用程序(及其所有依赖项)捆绑到一个单一的JAR文件中...使用the"shade"pluginforMaven.当我从我的Eclipse工作区运行它时,我的应用程序运行良好。但是,当我尝试执行带阴影的JAR文件时,我会得到一个堆栈跟踪,如下所示:org.apache.cxf.service.factory.ServiceConstructionException:Could

java - 如何在 maven-shade-plugin 创建的 Jar 中包含测试类?

我正在尝试使用Maven将我的测试类打包到一个带有依赖项的可执行jar中,但我很难做到这一点。到目前为止,这是我的pom.xml:4.0.0com.c0deattackexecutable-tests1.0jarexecutable-testsinfo.cukescucumber-java1.0.0info.cukescucumber-junit1.0.0org.seleniumhq.seleniumselenium-java2.21.0junitjunit4.10org.apache.maven.pluginsmaven-jar-plugin2.4test-jarorg.apache

java - maven 插件之间的区别 ( assembly-plugins , jar-plugins , shaded-plugins )

我是maven的初学者,现在我对这些maven插件之间的区别感到困惑。这些都是创建jar文件吗?现在我的问题是各个插件创建的jar有什么区别。(组装插件、jar-plugin、shaded插件)每个插件的用途。(程序集、jar插件、阴影插件)我知道,即使没有指定任何这些插件,一旦键入mvnpackage,就会有一个jar输出。没有这些插件的输出jar和有这些插件的输出jar有什么区别?TIA 最佳答案 maven-jar-plugin:这个插件提供了构建和签署JAR的能力。但它只是编译src/main/java和src/main/r

java - maven-shade-plugin 的用途是什么,为什么要重新定位 Java 包?

我发现有人在pom.xml中使用了maven-shade-plugin。我以前从未使用过maven-shade-plugin(我是Mavenn00b),所以我试图了解使用它的原因以及它的作用。我看了Mavendocs,但是我无法理解此声明:Thispluginprovidesthecapabilitytopackagetheartifactinanuber-jar,includingitsdependenciesandtoshade-i.e.rename-thepackagesofsomeofthedependencies.页面上的文档似乎对新手不太友好。什么是“superjar”?为