编译构建red5 发现server jar包含了boot里面的类,覆盖默认jar-plugin的打包方式 注意颜色加粗的地方
<plugin> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <executions> <execution> <id>default-jar</id> <phase>package</phase> <goals> <goal>jar</goal> </goals> <configuration> <archive> <manifest> <addDefaultImplementationEntries>false</addDefaultImplementationEntries> <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries> </manifest> <manifestEntries> <SCM-Revision>${buildNumber}</SCM-Revision> </manifestEntries> <manifestEntries> <Red5-Version>${project.version}</Red5-Version> </manifestEntries> </archive> <excludes> <exclude>**/org/red5/server/Bootstrap.class</exclude> <exclude>**/org/red5/server/Shutdown.class</exclude> <exclude>**/org/red5/server/jmx/mxbeans/ShutdownMXBean.class</exclude> <exclude>**/org/red5/classloading/**</exclude> </excludes> </configuration> </execution> <execution> <id>bootstrap</id> <phase>package</phase> <goals> <goal>jar</goal> </goals> <configuration> <classifier>bootstrap</classifier> <archive> <manifest> <addDefaultImplementationEntries>false</addDefaultImplementationEntries> <mainClass>org.red5.server.Bootstrap</mainClass> </manifest> <manifestEntries> <SCM-Revision>${buildNumber}</SCM-Revision> </manifestEntries> <manifestEntries> <Red5-Version>${project.version}</Red5-Version> </manifestEntries> </archive> <includes> <include>**/org/red5/server/Bootstrap.class</include> <include>**/org/red5/server/Shutdown.class</include> <include>**/org/red5/server/jmx/mxbeans/ShutdownMXBean.class</include> <include>**/org/red5/classloading/**</include> </includes> </configuration> </execution> </executions> </plugin>
参考资料:
http://stackoverflow.com/questions/13061193/maven-generating-two-jar-files-when-used-with-classifier-tag
http://maven.apache.org/plugins/maven-jar-plugin/usage.html
相关推荐
本篇文章将详细讲解如何使用Maven插件`proguard-maven-plugin`来对可执行JAR文件进行混淆。 首先,我们需要理解ProGuard是一个强大的Java类文件混淆器,它可以删除无用的代码,缩短类和方法的名称,以及重新打包类...
《深入解析Maven编译...虽然这是一个较旧的版本,但了解它的功能和使用方法,有助于我们更好地理解和运用Maven的整个构建过程。随着技术的不断进步,持续关注并适时升级插件,是确保项目构建效率和兼容性的必要措施。
本文将深入探讨这一插件的原理、使用方法及其在当前Android构建系统中的角色。 首先,Android Maven Gradle 插件是Gradle生态系统中的一员,它允许Android开发者利用Maven的便利性,如仓库管理和依赖解析,同时享受...
maven-plantuml-plugin, 使用PlantUML语法生成UML图的Maven 插件 然而,这个项目不再被维护了。使用语法生成UML图表的一个 Maven 插件插件。重要说明如果你想使用PlantUML大于 8031的版本,你必须使用这个插件的版本...
** 使用方法 ** 要在 Maven 项目中使用 maven-db-plugin,首先需要在项目的 pom.xml 文件中添加插件配置,包括插件的groupId、artifactId、version 以及具体的执行目标和参数。例如: ```xml <plugin> ...
**使用方法** 在Maven的POM.xml文件中,我们需要配置`build-helper-maven-plugin`来指定需要执行的操作。例如,要添加一个新的源代码目录: ```xml <plugin> <groupId>org.codehaus.mojo <artifactId>build-...
### Spring Boot Maven插件导入本地JAR包并进行打包的知识点 #### 一、Spring Boot Maven插件简介 `spring-boot-maven-plugin`是Spring Boot官方提供的Maven插件,用于简化Spring Boot项目的构建过程。它支持将...
首先,xjar-maven-plugin是一个Maven插件,它是Java开发中的一个实用工具,主要功能是将Java类库或应用程序的jar文件进行加密。这在某些场景下非常有用,比如你希望保护源代码不被反编译,或者防止未经授权的修改。...
本文将详细介绍 maven-assembly-plugin 的使用,包括其基本概念、配置方法和实践应用。 Maven 打包方式的分类 ------------------- Maven 提供了多种打包方式,包括 maven-jar-plugin、maven-shade-plugin 和 ...
例如,使用maven-surefire-plugin进行单元测试,maven-javadoc-plugin生成API文档,maven-source-plugin打包源代码。在`pom.xml`中定义插件并配置相关参数,然后通过`mvn plugin:goal`执行。 总之,Apache Maven ...
例如,`maven-compiler-plugin`用于Java源代码的编译,`maven-surefire-plugin`负责运行单元测试,`maven-war-plugin`则用于打包Web应用。 3. **生命周期与构建阶段**:Maven有预定义的构建生命周期,如`clean`、`...
虽然这里没有具体说明如何使用UglifyJS,但可以类比Closure Compiler的集成方法,将UglifyJS作为替代工具在Maven中配置和使用。在选择使用哪个工具时,应考虑项目的需求、代码结构以及对兼容性和性能的期望。
"add-source-maven-plugin"可能是用来在构建过程中添加源代码到最终的JAR文件,这对于调试和理解已编译的代码非常有用。 描述中的"resetallattrs.zip,c.untypecheck时scala 2.11中缺少反射兼容性库;c.untypecheck...
安装 mvn installmvn packagecp target/maven-plugin-jarc-1.0.1.jar .../repo/jarc/Jarc/maven-plugin-jarc/1.0.1/maven-plugin-jarc-1.0.1.jar用法将此添加到您的 pom.xml <plugin> <groupId>jarc.Jarc</groupId> ...
在这个场景中,我们将使用maven-jar-plugin和maven-assembly-plugin。 使用maven-jar-plugin生成可执行JAR包,主要配置如下: ```xml <plugin> <groupId>org.apache.maven.plugins <artifactId>maven-jar-plugin...
jmeter-maven-plugin, JMeter Maven 插件 #JMeter Maven 插件 提供在构建过程中运行JMeter测试的能力的Maven 插件有关更改信息,请参阅变更日志 。这个插件需要 1.8 或者更高版本,自 2.2.0 #Basic 用法将插
在Maven项目中,我们可以通过在pom.xml文件中配置`cobertura-maven-plugin`来启用它。首先,需要添加Mojohaus组织的插件仓库,因为Cobertura Maven插件是这个组织维护的: ```xml <id>sonatype-nexus-snapshots...
支持Maven 3.6 ,并准备使用Consumer POM的Maven的下一版本3.7/4.0 支持签名的subkey 易于在CI系统上使用,可以由环境变量提供配置 密钥密码可以通过标准的Maven 密钥准备 请看我们的 用法 < plugin> ...
可以使用标准maven-install-plugin和maven-deploy-plugin这些nar文件安装在本地Maven存储库中,并部署到标准Maven(Web)服务器中。 用法 在您的POM中: < plugin> < groupId>com.github.ma
本文将深入探讨这个开源项目`dependencypath-maven-plugin-1.1.1.zip`,了解其功能、用法以及如何在项目中集成和应用。 `dependencypath-maven-plugin`是一个针对Maven的插件,它的主要作用是为Maven项目中的每个...