`
ynp
  • 浏览: 439641 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jar包三种打包方式,maven 嘛味儿

阅读更多
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.solway</groupId>
	<artifactId>packateTest</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<description>打包测试by ynp</description>
	<dependencies>
		<dependency>
			<groupId>commons-logging</groupId>
			<artifactId>commons-logging</artifactId>
			<version>1.1.1</version>
		</dependency>

		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.17</version>
		</dependency>
	</dependencies>
	<build>
		<sourceDirectory>src/main/java</sourceDirectory>
		<plugins>
		<!-- ******* 方式一 : 运行方式 mvn clean package ******* -->
		<!-- 
	 		*  生成一个jar包,不包含依赖包
	 	 -->
		 	 
		<!--  
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>2.4</version>
				<configuration>
					<archive>
						<manifest>
							<addClasspath>true</addClasspath>
							<mainClass>com.xx.Test</mainClass>
						</manifest>
					</archive>
				</configuration>
			</plugin>
		 -->
		 	<!-- ******* 方式二 : 运行方式 mvn assembly:assembly ******* -->
		 	<!-- 
		 		* appendAssemblyId 为false 生成两个jar包,一个只打包自身代码,一个把依赖包打入
		 		* appendAssemblyId 为true 生成一个jar包,包含依赖包
		 	 -->
		 	
		 	<!-- 
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<configuration>
					<appendAssemblyId>true</appendAssemblyId>
					<descriptorRefs>
						<descriptorRef>jar-with-dependencies</descriptorRef>
					</descriptorRefs>
					<archive>
						<manifest>
							<mainClass>com.xx.Test</mainClass>
						</manifest>
					</archive>
				</configuration>
				<executions>
					<execution>
						<id>make-assembly</id>
						<phase>package</phase>
						<goals>
							<goal>single</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			
			 -->
			 
			<!-- ******* 方式三 : 运行方式 mvn clean package ******* -->	
			<!-- 
	 			*  生成两个jar包,一个只打包自身代码,一个把依赖包打入
	 	 	-->
	 	 
	        <plugin>  
	            <groupId>org.apache.maven.plugins</groupId>  
	            <artifactId>maven-shade-plugin</artifactId>  
	            <version>2.4</version>  
	            <executions>  
	                <execution>  
	                    <phase>package</phase>  
	                    <goals>  
	                        <goal>shade</goal>  
	                    </goals>  
	                    <configuration>  
	                        <transformers>  
	                            <transformer  
	                                implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">  
	                                <mainClass>com.xx.Test</mainClass>  
	                            </transformer>  
	                        </transformers>  
	                        <shadedArtifactAttached>true</shadedArtifactAttached>  
	                        <shadedClassifierName>executable</shadedClassifierName>  
	                    </configuration>  
	                </execution>  
	            </executions>  
	        </plugin>  
		</plugins>
	</build>

</project>
分享到:
评论

相关推荐

    maven打包 maven打jar包详细步骤

    本文将详细讲解如何使用Maven来打包一个Java项目,并创建JAR文件。 首先,Maven有三个主要生命周期阶段:`clean`、`default`(也称为`compile`)和`install`。每个阶段包含一系列的阶段(或者称为目标,如`compile`...

    Maven引入本地Jar包并打包进War包中的方法

    "Maven引入本地Jar包并打包进War包中的方法" Maven是一种流行的项目管理工具,主要用于Java项目的构建、测试和部署。在实际开发中,我们经常需要引入本地Jar包以满足项目的需求。本文将介绍Maven引入本地Jar包并...

    springboot+maven打包demo【将依赖与配置文件打包到jar包外部】

    在本文中,我们将深入探讨如何使用Spring Boot和Maven来构建一个项目,使得依赖和配置文件被打包到jar包外部,以实现更加灵活的项目管理。这个方法对于那些需要根据不同环境进行定制配置或者频繁更新配置的应用来说...

    maven批量导入第三方jar包至本地库工具

    5. **项目构建**:配置完成后,Maven在构建项目时就能找到这些第三方jar包,从而顺利完成编译和打包。 使用这个工具的一个关键点是确保每个导入的jar包都有正确的坐标信息,否则Maven可能无法正确解析和使用它们。...

    mavenjar包

    总结起来,"mavenjar 包" 的处理涉及到了 Maven 的 JAR 文件打包、依赖管理和 IDE 集成。正确地将 JAR 文件放入 Java 环境并更新开发环境,可以确保项目的正常运行和开发效率的提升。对于Java开发者来说,熟练掌握 ...

    Maven发布Jar包中文乱码解决方法

    然而,在使用 Maven 发布 Jar 包时,ometimes 中文字符会出现乱码问题。本文将详细介绍 Maven 发布 Jar 包中文乱码解决方法。 一、问题分析 在使用 Maven 部署 Jar 包时,可能会出现中文乱码问题。这种问题的出现...

    Java+IDEA+maven混淆打包

    在`pom.xml`文件中,我们需要添加`maven-jar-plugin`插件来打包Java项目。以下是一个基本的配置示例: ```xml &lt;groupId&gt;org.apache.maven.plugins &lt;artifactId&gt;maven-jar-plugin &lt;version&gt;3.2.0 ...

    Springboot 打Jar包,Maven完美解决本地Jar包自动打入Springboot Jar包中

    ### Springboot 打Jar包,Maven完美解决本地Jar包自动打入Springboot Jar包中 #### 背景介绍 随着微服务架构的流行,Spring Boot 成为了开发微服务应用时首选的技术栈之一。它简化了传统的Java Web应用程序的开发...

    Maven 构建 Kettle 时所需的部分jar包

    首先,Maven是一个广泛使用的Java项目管理工具,它提供了一种标准化的方式来管理和构建Java项目。Maven通过依赖管理和项目信息管理,使得开发者能够轻松地解决项目的构建问题。它通过读取项目对象模型(Project ...

    JSONObject相关jar包和maven管理jar包

    标题"JSONObject相关jar包和maven管理jar包"暗示了我们讨论的主题集中在JSONObject类库的使用上,特别是如何在Java项目中通过jar包和Maven构建工具来管理和利用这个类库。JSONObject是Java编程语言中用于处理JSON...

    详解如何将本地JAR包添加到本地Maven仓库中

    有些时候,当我们需要在自己的maven工程中添加一个确定的jar而发现Maven中央仓库不存在时,但是我们自己手上有这些需要的jar包,那么我们可以自给自足,把这个jar包添加到我们的自己的maven仓库中,这样方便在maven...

    一键清除maven仓库中下载失败的jar包的实现方法

    一键清除maven仓库中下载失败的jar包的实现方法 在Maven项目中,下载失败的jar包是一个常见的问题,它们会占用磁盘空间,影响开发效率和心情。因此,清除这些下载失败的jar包变得非常重要。本文将详细介绍如何使用...

    maven 3 jar 运行文件打包

    【标题】:“Maven 3 Jar 运行文件打包” 在Java开发中,Maven是一个广泛应用的构建工具,它能够帮助我们管理项目依赖、构建工件(如JAR文件)以及自动化项目的构建过程。当我们想要将Java应用程序打包成可执行的...

    maven2 jar包

    maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包

    Maven中主要jar包集合

    本文将深入探讨"Maven中主要jar包集合"这一主题,旨在帮助初学者理解Maven的工作原理以及如何利用它来高效地管理jar包。 首先,我们要明白什么是Maven。Maven是Apache软件基金会开发的一个项目管理和综合工具,主要...

    批量导入maven本地jar包

    批量导入maven本地jar包

    【绝对可行,解决404】jfinal项目打包成jar在控制台运行方法

    本文将详细介绍一个非Maven项目的JFinal应用如何打包成JAR,并在控制台上运行。 首先,JFinal项目打包的关键在于确保所有依赖的库和配置文件都被包含在内。由于本项目不是通过Maven构建的,我们需要手动处理这些...

    将jar包添加到本地maven仓库

    在Java开发中,Maven作为项目管理和构建工具,广泛用于管理依赖关系。...记住,这种方式适用于临时或私有的jar包,对于公共库,还是建议发布到公共Maven仓库如JCenter或Maven Central,以便社区共享。

    maven的本地仓库jar包

    Maven的本地仓库是Maven系统的核心组件之一,它存储着项目所需的各类依赖库,包括JAR包。当你在开发过程中引用了一个库,Maven会尝试从中央仓库下载该库到本地仓库,以便后续的编译和构建步骤能够访问到。 本地仓库...

Global site tag (gtag.js) - Google Analytics