返回顶部
首页 > 资讯 > 精选 >maven如何打包zip包含bin下启动脚本
  • 646
分享到

maven如何打包zip包含bin下启动脚本

2023-06-25 11:06:37 646人浏览 泡泡鱼
摘要

这篇文章主要为大家展示了“Maven如何打包zip包含bin下启动脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“maven如何打包zip包含bin下启动脚本”这篇文章吧。maven打包zip

这篇文章主要为大家展示了“Maven如何打包zip包含bin下启动脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“maven如何打包zip包含bin下启动脚本”这篇文章吧。

maven打包zip包含bin下启动脚本,这个脚本小编在idea测试有效:

pom.xml打包

<build>        <sourceDirectory>src/main/Scala</sourceDirectory>        <testSourceDirectory>src/test/scala</testSourceDirectory>        <resources>            <resource>                <directory>src/main/resources</directory>                <includes>                    <include>***.xml</include>                </includes>                <!-- 排除外置的配置文件(运行时注释上,使IDE能读到配置文件;打包时放开注释让配置文件外置,方便修改)可以不配置,maven-jar-plugin下面已配置 -->                <!--<excludes>                    <exclude>config.properties</exclude>                </excludes>-->            </resource>            <!-- 配置文件外置的资源(存放到conf目录,也是classpath路径,下面会配置)-->            <!--<resource>                <directory>src/main/resources</directory>                <includes>                    <include>config.properties</include>                </includes>                <targetPath>${project.build.directory}/conf</targetPath>            </resource>-->        </resources>        <plugins>            <!--scala编译打包插件-->            <plugin>                <groupId>net.alchim31.maven</groupId>                <artifactId>scala-maven-plugin</artifactId>                <version>3.2.1</version>                <executions>                    <execution>                        <id>scala-compile-first</id>                        <phase>process-resources</phase>                        <Goals>                            <goal>add-source</goal>                            <goal>compile</goal>                        </goals>                    </execution>                </executions>            </plugin>            <!--java编译打包插件-->            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-compiler-plugin</artifactId>                <version>3.1</version>                <configuration>                    <source>1.8</source>                    <target>1.8</target>                    <encoding>UTF-8</encoding>                </configuration>                <executions>                    <execution>                        <phase>compile</phase>                        <goals>                            <goal>compile</goal>                        </goals>                    </execution>                </executions>            </plugin>            <!--                ③打成一个zip包,发布项目的时候,将zip包copy到服务器上,直接unzip xxx.zip,里面包含要运行到的jar以及依赖的lib,还有配置的config文件,即可直接启动服务            -->            <!--The configuration of maven-jar-plugin-->            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-jar-plugin</artifactId>                <version>2.4</version>                <!--The configuration of the plugin-->                <configuration>                    <!-- 不打包资源文件(配置文件和依赖包分开) -->                    <excludes>                        <exclude>*.properties</exclude>                        <exclude>*.xml</exclude>                        <exclude>*.txt</exclude>                    </excludes>                    <!--Configuration of the arcHiver-->                    <archive>                        <!--生成的jar中,不要包含pom.xml和pom.properties这两个文件-->                        <addMavenDescriptor>false</addMavenDescriptor>                        <!--Manifest specific configuration-->                        <manifest>                            <!--是否把第三方jar放到manifest的classpath中-->                            <addClasspath>true</addClasspath>                            <!--生成的manifest中classpath的前缀,因为要把第三方jar放到lib目录下,所以classpath的前缀是lib/-->                            <classpathPrefix>lib/</classpathPrefix>                            <!--应用的main class-->                            <mainClass>com.sWordfall.restserver.base.WEBServer</mainClass>                        </manifest>                        <!-- 给清单文件添加键值对,增加classpath路径,这里将conf目录也设置为classpath路径 -->                        <manifestEntries>                            <Class-Path>conf/</Class-Path>                        </manifestEntries>                    </archive>                    <!--过滤掉不希望包含在jar中的文件-->                    <!-- <excludes>                         <exclude>${project.basedir}/xml/*</exclude>                     </excludes>-->                </configuration>            </plugin>            <!--The configuration of maven-assembly-plugin-->            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-assembly-plugin</artifactId>                <version>2.4</version>                <!--The configuration of the plugin-->                <configuration>                    <!--Specifies the configuration file of the assembly plugin-->                    <descriptors>                        <descriptor>src/main/assembly/assembly.xml</descriptor>                    </descriptors>                </configuration>                <executions>                    <execution>                        <id>make-assembly</id>                        <phase>package</phase>                        <goals>                            <goal>single</goal>                        </goals>                    </execution>                </executions>            </plugin>        </plugins>    </build>

 assembly.xml打包zip设置

assembly.xml<assembly>    <id>bin</id>    <includeBaseDirectory>false</includeBaseDirectory>    <!-- 最终打包成一个用于发布的zip文件 -->    <fORMats>        <format>zip</format>    </formats>    <!-- Adds dependencies to zip package under lib directory -->    <dependencySets>        <dependencySet>            <!-- 不使用项目的artifact,第三方jar不要解压,打包进zip文件的lib目录 -->            <useProjectArtifact>false</useProjectArtifact>            <outputDirectory>lib</outputDirectory>            <unpack>false</unpack>        </dependencySet>    </dependencySets>    <fileSets>        <!-- 把项目相关的说明文件,打包进zip文件的根目录 -->        <!--<fileSet>            <directory>${project.basedir}</directory>            <outputDirectory>/</outputDirectory>        </fileSet>-->        <!-- 把项目的配置文件,打包进zip文件的config目录 -->        <!--<fileSet>-->        <!--<directory>${project.basedir}/src/main/resources</directory>-->        <!--<outputDirectory>/conf</outputDirectory>-->        <!--<includes>-->        <!--<include>*.xml</include>-->        <!--<include>*.properties</include>-->        <!--</includes>-->        <!--</fileSet>-->        <!-- 把项目自己编译出来的jar文件,打包进zip文件的根目录 -->        <fileSet>            <directory>${project.build.directory}</directory>            <outputDirectory></outputDirectory>            <includes>                <include>*.jar</include>            </includes>        </fileSet>        <!-- 把项目的脚本文件目录(src/main/scripts)中的启动脚本,打包进zip文件的根目录 -->        <fileSet>            <directory>${project.basedir}/src/main/bin</directory>            <outputDirectory>bin</outputDirectory>            <includes>                <include>*.sh</include>            </includes>        </fileSet>    </fileSets></assembly>

ps:下面看下maven 打zip包并包含bin和docs文件夹

maven插件:

<plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration>  <appendAssemblyId>false</appendAssemblyId>  <descriptors>   <descriptor>src/main/resources/assembly.xml</descriptor>  </descriptors> </configuration> <executions>  <execution>   <id>make-assembly</id>   <phase>package</phase>   <goals>    <goal>single</goal>   </goals>  </execution> </executions></plugin>

assembly.xml

<assembly>    <id>package</id>    <formats>        <format>zip</format>    </formats>    <includeBaseDirectory>false</includeBaseDirectory>    <fileSets>        <fileSet>            <directory>${project.parent.basedir}/bin</directory>            <outputDirectory>\bin</outputDirectory>        </fileSet>        <fileSet>            <directory>${project.parent.basedir}/db</directory>            <outputDirectory>\db</outputDirectory>        </fileSet>        <fileSet>            <directory>${project.parent.basedir}/docs</directory>            <outputDirectory>\docs</outputDirectory>        </fileSet>        <fileSet>            <directory>${project.parent.basedir}</directory>            <outputDirectory>\</outputDirectory>            <includes>                <include>readme.md</include>                <include>release-notes</include>            </includes>        </fileSet>        <fileSet>            <directory>${project.build.directory}</directory>            <outputDirectory>\</outputDirectory>            <includes>                <include>*.jar</include>            </includes>        </fileSet>    </fileSets></assembly>

以上是“maven如何打包zip包含bin下启动脚本”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: maven如何打包zip包含bin下启动脚本

本文链接: https://lsjlt.com/news/304158.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • maven如何打包zip包含bin下启动脚本
    这篇文章主要为大家展示了“maven如何打包zip包含bin下启动脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“maven如何打包zip包含bin下启动脚本”这篇文章吧。maven打包zip...
    99+
    2023-06-25
  • maven打包zip包含bin下启动脚本的完整代码
    maven打包zip包含bin下启动脚本,这个脚本小编在idea上测试有效: pom.xml打包 <build> <sourceDirector...
    99+
    2024-04-02
  • maven如何打包动态环境变量(包括启动脚本)
    目录maven 打包 动态启动脚本前提maven环境变量(知道这个是怎么回事的直接跳过这部分即可)assembly 配置启动脚本如何写maven常用打包命令总结maven 打包 动态...
    99+
    2023-05-14
    maven打包 maven动态环境变量 maven启动脚本
  • shell如何调用脚本将文件打包zip
    这篇文章给大家分享的是有关shell如何调用脚本将文件打包zip的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。方法如下:第一步,创建脚本:#!/bin/shCERT_DIR_ZIP=/data/cert/keys...
    99+
    2023-06-09
  • Maven打包时如何指定启动类
    目录Maven打包时指定启动类方法一方法二maven打包以某个类为启动类总结Maven打包时指定启动类 使用Maven打包的时候, 有时候需要指定启动类, 可如下操作! 测试项目(结...
    99+
    2023-05-14
    Maven打包 Maven指定启动类 Maven启动类
  • maven打包如何指定jdk的版本
    目录maven打包指定jdk的版本问题maven打包不同jdk版本的包1. 在项目的pom文件中加入如下配置(主要配置)2. 用mvn命令构建项目3. 项目中引用总结maven打包指...
    99+
    2023-05-14
    maven打包 指定jdk版本 maven jdk版本
  • Linux中如何实现启动jar包的shell脚本
    这篇文章主要为大家展示了“Linux中如何实现启动jar包的shell脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中如何实现启动jar包的shell脚本”这篇文章吧。背景:项目设...
    99+
    2023-06-09
  • Linux中如何自定义shell脚本启动jar包
    本篇内容主要讲解“Linux中如何自定义shell脚本启动jar包”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux中如何自定义shell脚本启动jar包”吧!一键启动、停止、重启 jav...
    99+
    2023-06-09
  • 如何用Java响应打包的JavaScript脚本?
    JavaScript是一种广泛使用的脚本语言,用于在Web浏览器中创建交互式和动态的网页。然而,在某些情况下,我们需要将多个JavaScript脚本打包在一起以加快加载速度和提高性能。但是,当我们需要在Java中使用这些打包的JavaSc...
    99+
    2023-08-18
    响应 打包 javascript
  • Eclipse下配置Ant脚本并自动打包带签名的Android apk
    eclipse虽然用的比较少,但是在一些古老的项目上还会用到滴,其中最麻烦的事情就是打带签名包的问题,不太方便,下面通过本文给大家记录下配置ant,自动打包带签名apk的过程,...
    99+
    2022-06-06
    自动 Eclipse ant apk Android
  • windows下pcl2启动器如何导入整合包
    这篇文章主要介绍了windows下pcl2启动器如何导入整合包的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇windows下pcl2启动器如何导入整合包文章都会有所收获,下面我们一起来看看吧。pcl2启动器导入...
    99+
    2023-07-04
  • 如何编写CentOS下redis自启动shell脚本
    这篇文章主要讲解了“如何编写CentOS下redis自启动shell脚本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何编写CentOS下redis自启动shell脚本”吧!用这个脚本管理...
    99+
    2023-06-09
  • 如何将安卓 Gradle 模块打包发布到本地 Maven 仓库
    文章目录 具体流程 笔者的运行环境: Android Studio Flamingo | 2022.2.1 Android SDK 33 Gradle 8.0.1 JDK 1...
    99+
    2023-10-05
    android maven Gradle 模块化
  • 如何将Python脚本打包成exe应用程序介绍
    目录前言安装Pyinstaller将脚本打包成exe应用程序进阶:消除命令窗口、自定义图标总结前言 我们有时候会编写Python脚本来辅助我们执行一些重复的操作。但是这些脚本在实际使...
    99+
    2024-04-02
  • ubuntu下如何编写shell脚本实现开机自动启动
    这篇文章主要介绍“ubuntu下如何编写shell脚本实现开机自动启动”,在日常操作中,相信很多人在ubuntu下如何编写shell脚本实现开机自动启动问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ubunt...
    99+
    2023-07-04
  • 如何利用vue-cli监测webpack打包与启动时长
    目录说在前面统计build时长统计serve时长统计每次重新编译时长总结说在前面 最近项目同事反馈webpack打包时间过长,修改一次代码就要编译好久,所以我针对我们的项目进行了打包...
    99+
    2024-04-02
  • Springboot如何使用maven release插件执行版本管理及打包操作
    这篇文章主要为大家展示了“Springboot如何使用maven release插件执行版本管理及打包操作”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Springboot如何使用ma...
    99+
    2023-06-29
  • RAC中如何使用diagcollection.pl脚本打包收集诊断日志文件
    这篇文章主要介绍RAC中如何使用diagcollection.pl脚本打包收集诊断日志文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在Oracle集群环境的“$ORA_CRS_HOME/bin”目录下提供了dia...
    99+
    2023-06-06
  • 前端打包后生成的dist 或 build目录,如何在本地启动服务运行
    前端打包后生成的dist/build目录,如何在本地启动服务运行 运行npn run build,会打包后会产生 dist 或 build 目录 一般情况下,直接打开dist 或 build 目录下的...
    99+
    2023-09-22
    前端 nginx 服务器
  • SpringBoot2如何自定义启动页、项目打包和指定运行环境
    这篇文章主要介绍了SpringBoot2如何自定义启动页、项目打包和指定运行环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、打包简介springboot的打包方式有很多...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作