使用assembly打包
1.在pom增加插件
<build><plugins><!--使用maven-jar-plugin将指定包目录打成单独的jar包 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><configuration><excludes><exclude>*.properties</exclude></excludes></configuration></plugin><!-- maven 编译插件 maven打包时需要 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><!-- 在构建路径中 指定编译的字符编码 --><encoding>${project.build.sourceEncoding}</encoding></configuration></plugin><!--资源文件拷贝的插件 --><!-- 该插件的作用 主要是处理将 主程序与 运行程序所需的源文件复制到输出编译文件夹中。 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId><configuration><!-- 在构建路径中 指定源文件编译的字符编码 --><encoding>${project.build.sourceEncoding}</encoding></configuration></plugin><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><!-- 使用assembly打包后的名字如 service-provider-1.0-SNAPSHOT-release.zip使用ctrl加左键 点进去看${project.artifactId}-${project.version}${project.artifactId}是当前项目的artifactId和version组合的(service-provider-1.0-SNAPSHOT)加上下面executions的execution的id--><finalName>${project.build.finalName}</finalName></configuration><executions> <!--执行器 mvn assembly:assembly--><execution><id>release</id><!--名字任意 --><phase>package</phase><!-- 绑定到package生命周期阶段上 --><goals><goal>single</goal><!-- 只运行一次 --></goals><configuration><descriptors> <!--描述文件路径--><descriptor>src/main/resources/run/assembly.xml</descriptor></descriptors></configuration></execution></executions></plugin></plugins></build>
2.增加描述文件(这个文件要和pom插件中指定的描述文件路径一致)
assembly.xml
<?xml version="1.0" encoding="UTF-8"?>
<assemblyxmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0http://maven.apache.org/xsd/assembly-1.1.0.xsd"><id>release</id><formats><format>zip</format></formats><fileSets><fileSet><directory>src/main/resources</directory><!-- 过滤 --><includes><include>*.properties</include></includes><outputDirectory>/</outputDirectory></fileSet><fileSet><directory>src/main/resources/run</directory><outputDirectory>/</outputDirectory><includes><include>*.sh</include><include>*.bat</include></includes></fileSet></fileSets><dependencySets><!-- 将scope为runtime的依赖包打包到lib目录下。 --><dependencySet><useProjectArtifact>true</useProjectArtifact><outputDirectory>libs</outputDirectory><scope>runtime</scope></dependencySet></dependencySets></assembly>
3.增加startup.bat
@echo off
setLocal enableDelayedExpansion
set cp=.
FOR %%i IN ("%~dp0libs\*.jar") DO set cp=!cp!;%%~fsi
start "quotation_front" java -server -cp %cp% Shell
4.增加startup.sh (com.lagou.ProviderApplication这个为main方法的全路径)
#!/bin/sh
baseDir=$(cd "$(dirname "$0")"; pwd)
cp=.
for file in $baseDir/libs/*.jar
docp=$cp:$file
done
java -server -Xmx2048m -Xss256k -cp $cp com.lagou.ProviderApplication >> $baseDir/stdout.out 2>&1 &
最后执行maven打包install,找到打包后文件解压上传到linux服务器直接执行startup.sh就可以了
使用assembly打包相关推荐
- java assembly 打包_maven 使用assembly 进行打包的方法
1. pom 中添加assembly 插件 要使用assembly 进项编译打包, 首先主要在pom 中的build中添加插件信息, 具体如图下所示: ${project.artifactId} sr ...
- 使用 assembly 打包报错
使用 assembly 打包报错 The following patterns were never triggered in this artifact inclusion filter: o '* ...
- maven assembly打包zip报错 You must set at least one file.
文章目录 maven assembly打包Error creating assembly archive pack: You must set at least one file. maven ass ...
- assembly打包
assembly打包 1 springboot项目 -> 子项目assembly assembly子项目是微服务中的子项目,专门用来打包的 1.1 springboot项目 -> 子项目a ...
- Maven assembly打包文件被覆盖问题
Maven的assembly插件使用: 最近在做一个小工程,利用java启动运行. 为了简单方便使用运行,利用maven的assembly将需要使用的jar都打包到一个jar中.这样无论拷贝到哪里,只 ...
- springboot项目assembly打包配置
项目的目录结构如图: 下面是主要的配置文件内容: assembly.xml <?xml version="1.0" encoding="UTF-8"?&g ...
- idea 中maven assembly 打包项目
使用assembly插件来打包项目: 1>在pom.xml中配置assembly插件 <properties><project.build.sourceEncoding> ...
- maven assembly打包插件详解
定义 来自官方的定义: Maven Assembly Plugin relies on the provided assembly descriptors to dictate its executi ...
- java assembly 打包_使用Maven的assembly插件实现自定义打包
一.背景 最近我们项目越来越多了,然后我就在想如何才能把基础服务的打包方式统一起来,并且可以实现按照我们的要求来生成,通过研究,我们通过使用maven的assembly插件完美的实现了该需求,爽爆了有 ...
最新文章
- 渗透测试靶机搭建_对vulnhub中Android4靶机渗透测试全过程!
- 【图像处理】——Python实现图像加噪(随机噪声、椒盐噪声、高斯噪声等)
- CS144 lab4 计算机网络实验 笔记
- java this() super()_java中的this和super
- tomcat启动(五)Catalina分析-service.init
- MySQL深度剖析之数据在磁盘上存储(2021)
- 超级楼梯[HDU2041]
- 解决VScode安装Babel转码器报错:无法将“cnpm“项识别为cmdlet\函数、脚本文件或可运行程序的名称的问题
- 开源 免费 java CMS - FreeCMS1.5 标签 ajaxStore
- asp.net mvc 发布问题
- esayexcel导出动态表头数据
- 词语相似度分析(《知网》、同义词词林、word2vec)
- 计算机网络管理公开课观后感,青年网络公开课的观后感
- 产品读书《科技想要什么》KK
- 企业私有云资源规划及设计
- Lucas-Kanade稀疏光流法
- Orcle 12c Sharding---Sharded和Duplicated表介绍
- HEVC视频编码技术概述
- Mashup,互联网一个方向。
- 电子工程可以报考二建_我是电子信息工程专业,可以报考二级建造师吗?要..._二建考试_帮考网...