一段实用的maven pom:将项目依赖打包到文件夹或打入jar中

2024-03-28 17:08

本文主要是介绍一段实用的maven pom:将项目依赖打包到文件夹或打入jar中,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用了maven-assembly-plugin插件和maven-dependency-plugin:

[html]  view plain  copy
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
  2.     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">    
  3.     <modelVersion>4.0.0</modelVersion>    
  4.     <groupId>net.aty.deps</groupId>    
  5.     <artifactId>MyJar</artifactId>    
  6.     <packaging>jar</packaging>    
  7.     <version>0.0</version>    
  8.     
  9.     <dependencies>    
  10.         <dependency>  
  11.             <groupId>org.apache.httpcomponents</groupId>  
  12.             <artifactId>httpclient</artifactId>  
  13.             <version>4.3.6</version>  
  14.         </dependency>  
  15.     </dependencies>    
  16.     
  17.     <build>    
  18.         <plugins>   
  19.               
  20.             <plugin>  
  21.                 <groupId>org.apache.maven.plugins</groupId>  
  22.                 <artifactId>maven-dependency-plugin</artifactId>  
  23.                 <executions>  
  24.                     <execution>  
  25.                         <id>copy-dependencies</id>  
  26.                         <phase>prepare-package</phase>  
  27.                         <goals>  
  28.                             <goal>copy-dependencies</goal>  
  29.                         </goals>  
  30.                         <configuration>  
  31.                             <outputDirectory>${project.build.directory}/lib</outputDirectory>  
  32.                             <overWriteReleases>false</overWriteReleases>  
  33.                             <overWriteSnapshots>false</overWriteSnapshots>  
  34.                             <overWriteIfNewer>true</overWriteIfNewer>  
  35.                         </configuration>  
  36.                     </execution>  
  37.                 </executions>  
  38.             </plugin>  
  39.               
  40.               
  41.             <plugin>    
  42.                 <artifactId>maven-assembly-plugin</artifactId>    
  43.                 <configuration>    
  44.                     <descriptorRefs>    
  45.                         <descriptorRef>jar-with-dependencies</descriptorRef>    
  46.                     </descriptorRefs>    
  47.                     <archive>    
  48.                         <manifest>    
  49.                           <mainClass></mainClass>    
  50.                         </manifest>    
  51.                     </archive>    
  52.                 </configuration>    
  53.                 <executions>    
  54.                     <execution>    
  55.                         <id>make-assembly</id>    
  56.                         <phase>package</phase>    
  57.                         <goals>    
  58.                             <goal>single</goal>    
  59.                         </goals>    
  60.                     </execution>    
  61.               </executions>    
  62.             </plugin>   
  63.               
  64.         </plugins>  
  65.     </build>    
  66. </project>   



执行mvn clean package命令,我们就可以得到如下结果:

这篇关于一段实用的maven pom:将项目依赖打包到文件夹或打入jar中的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/856200

相关文章

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

解决idea启动项目报错java: OutOfMemoryError: insufficient memory

《解决idea启动项目报错java:OutOfMemoryError:insufficientmemory》:本文主要介绍解决idea启动项目报错java:OutOfMemoryError... 目录原因:解决:总结 原因:在Java中遇到OutOfMemoryError: insufficient me

maven异常Invalid bound statement(not found)的问题解决

《maven异常Invalidboundstatement(notfound)的问题解决》本文详细介绍了Maven项目中常见的Invalidboundstatement异常及其解决方案,文中通过... 目录Maven异常:Invalid bound statement (not found) 详解问题描述可

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

SpringBoot项目整合Netty启动失败的常见错误总结

《SpringBoot项目整合Netty启动失败的常见错误总结》本文总结了SpringBoot集成Netty时常见的8类问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、端口冲突问题1. Tomcat与Netty端口冲突二、主线程被阻塞问题1. Netty启动阻

python项目打包成docker容器镜像的两种方法实现

《python项目打包成docker容器镜像的两种方法实现》本文介绍两种将Python项目打包为Docker镜像的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录简单版:(一次成功,后续下载对应的软件依赖)第一步:肯定是构建dockerfile,如下:第二步

Python + Streamlit项目部署方案超详细教程(非Docker版)

《Python+Streamlit项目部署方案超详细教程(非Docker版)》Streamlit是一款强大的Python框架,专为机器学习及数据可视化打造,:本文主要介绍Python+St... 目录一、针对 Alibaba Cloud linux/Centos 系统的完整部署方案1. 服务器基础配置(阿里

在SpringBoot+MyBatis项目中实现MySQL读写分离的实战指南

《在SpringBoot+MyBatis项目中实现MySQL读写分离的实战指南》在SpringBoot和MyBatis项目中实现MySQL读写分离,主要有两种思路:一种是在应用层通过代码和配置手动控制... 目录如何选择实现方案核心实现:应用层手动分离实施中的关键问题与解决方案总结在Spring Boot和

java创建xls文件放到指定文件夹中实现方式

《java创建xls文件放到指定文件夹中实现方式》本文介绍了如何在Java中使用ApachePOI库创建和操作Excel文件,重点是如何创建一个XLS文件并将其放置到指定文件夹中... 目录Java创建XLS文件并放到指定文件夹中步骤一:引入依赖步骤二:创建XLS文件总结Java创建XLS文件并放到指定文件