`
blueram
  • 浏览: 762394 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

maven-jar-plugin 特殊用法

 
阅读更多


编译构建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

 

分享到:
评论
1 楼 zxjlwt 2015-11-26  
学习了。
http://surenpi.com

相关推荐

    使用Maven控件proguard-maven-plugin给可执行jar文件混淆

    本篇文章将详细讲解如何使用Maven插件`proguard-maven-plugin`来对可执行JAR文件进行混淆。 首先,我们需要理解ProGuard是一个强大的Java类文件混淆器,它可以删除无用的代码,缩短类和方法的名称,以及重新打包类...

    maven-compiler-plugin-2.0.2.jar.zip

    《深入解析Maven编译...虽然这是一个较旧的版本,但了解它的功能和使用方法,有助于我们更好地理解和运用Maven的整个构建过程。随着技术的不断进步,持续关注并适时升级插件,是确保项目构建效率和兼容性的必要措施。

    android-maven-gradle-plugin,与android库项目兼容的gradle的maven插件.zip

    本文将深入探讨这一插件的原理、使用方法及其在当前Android构建系统中的角色。 首先,Android Maven Gradle 插件是Gradle生态系统中的一员,它允许Android开发者利用Maven的便利性,如仓库管理和依赖解析,同时享受...

    maven-plantuml-plugin, 使用PlantUML语法生成UML图的Maven 插件.zip

    maven-plantuml-plugin, 使用PlantUML语法生成UML图的Maven 插件 然而,这个项目不再被维护了。使用语法生成UML图表的一个 Maven 插件插件。重要说明如果你想使用PlantUML大于 8031的版本,你必须使用这个插件的版本...

    maven-db-plugin.jar包

    ** 使用方法 ** 要在 Maven 项目中使用 maven-db-plugin,首先需要在项目的 pom.xml 文件中添加插件配置,包括插件的groupId、artifactId、version 以及具体的执行目标和参数。例如: ```xml &lt;plugin&gt; ...

    build-helper-maven-plugin-0.15.0

    **使用方法** 在Maven的POM.xml文件中,我们需要配置`build-helper-maven-plugin`来指定需要执行的操作。例如,要添加一个新的源代码目录: ```xml &lt;plugin&gt; &lt;groupId&gt;org.codehaus.mojo &lt;artifactId&gt;build-...

    spring-boot-maven-plugin导入本地的一些jar并打包.docx

    ### Spring Boot Maven插件导入本地JAR包并进行打包的知识点 #### 一、Spring Boot Maven插件简介 `spring-boot-maven-plugin`是Spring Boot官方提供的Maven插件,用于简化Spring Boot项目的构建过程。它支持将...

    xjar_maven_plugin.rar

    首先,xjar-maven-plugin是一个Maven插件,它是Java开发中的一个实用工具,主要功能是将Java类库或应用程序的jar文件进行加密。这在某些场景下非常有用,比如你希望保护源代码不被反编译,或者防止未经授权的修改。...

    Maven3种打包方式中maven-assembly-plugin的使用详解

    本文将详细介绍 maven-assembly-plugin 的使用,包括其基本概念、配置方法和实践应用。 Maven 打包方式的分类 ------------------- Maven 提供了多种打包方式,包括 maven-jar-plugin、maven-shade-plugin 和 ...

    apache-maven-3.5.4-bin.tar.gz

    例如,使用maven-surefire-plugin进行单元测试,maven-javadoc-plugin生成API文档,maven-source-plugin打包源代码。在`pom.xml`中定义插件并配置相关参数,然后通过`mvn plugin:goal`执行。 总之,Apache Maven ...

    apache-maven-3.2.5.zip 下载

    例如,`maven-compiler-plugin`用于Java源代码的编译,`maven-surefire-plugin`负责运行单元测试,`maven-war-plugin`则用于打包Web应用。 3. **生命周期与构建阶段**:Maven有预定义的构建生命周期,如`clean`、`...

    用谷歌的closure-compiler + maven-antrun-plugin

    虽然这里没有具体说明如何使用UglifyJS,但可以类比Closure Compiler的集成方法,将UglifyJS作为替代工具在Maven中配置和使用。在选择使用哪个工具时,应考虑项目的需求、代码结构以及对兼容性和性能的期望。

    add-source-maven-plugin-1.1.zip

    "add-source-maven-plugin"可能是用来在构建过程中添加源代码到最终的JAR文件,这对于调试和理解已编译的代码非常有用。 描述中的"resetallattrs.zip,c.untypecheck时scala 2.11中缺少反射兼容性库;c.untypecheck...

    maven-plugin-jarc:用于编译 Jarc 文件的 Maven 插件

    安装 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 &lt;plugin&gt; &lt;groupId&gt;jarc.Jarc&lt;/groupId&gt; ...

    Maven 生成打包可执行jar包的方法步骤

    在这个场景中,我们将使用maven-jar-plugin和maven-assembly-plugin。 使用maven-jar-plugin生成可执行JAR包,主要配置如下: ```xml &lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins &lt;artifactId&gt;maven-jar-plugin...

    jmeter-maven-plugin, JMeter Maven 插件.zip

    jmeter-maven-plugin, JMeter Maven 插件 #JMeter Maven 插件 提供在构建过程中运行JMeter测试的能力的Maven 插件有关更改信息,请参阅变更日志 。这个插件需要 1.8 或者更高版本,自 2.2.0 #Basic 用法将插

    cobertura-maven-plugin:Cobertura Maven插件

    在Maven项目中,我们可以通过在pom.xml文件中配置`cobertura-maven-plugin`来启用它。首先,需要添加Mojohaus组织的插件仓库,因为Cobertura Maven插件是这个组织维护的: ```xml &lt;id&gt;sonatype-nexus-snapshots...

    sign-maven-plugin:Maven插件,可为项目的所有工件创建OpenPGP签名

    支持Maven 3.6 ,并准备使用Consumer POM的Maven的下一版本3.7/4.0 支持签名的subkey 易于在CI系统上使用,可以由环境变量提供配置 密钥密码可以通过标准的Maven 密钥准备 请看我们的 用法 &lt; plugin&gt; ...

    nar-maven-plugin:适用于Maven的本机ARchive插件

    可以使用标准maven-install-plugin和maven-deploy-plugin这些nar文件安装在本地Maven存储库中,并部署到标准Maven(Web)服务器中。 用法 在您的POM中: &lt; plugin&gt; &lt; groupId&gt;com.github.ma

    dependencypath-maven-plugin-1.1.1.zip

    本文将深入探讨这个开源项目`dependencypath-maven-plugin-1.1.1.zip`,了解其功能、用法以及如何在项目中集成和应用。 `dependencypath-maven-plugin`是一个针对Maven的插件,它的主要作用是为Maven项目中的每个...

Global site tag (gtag.js) - Google Analytics