`
sangmin214
  • 浏览: 178582 次
  • 性别: Icon_minigender_1
  • 来自: 黄山
文章分类
社区版块
存档分类
最新评论

Maven中assembly插件的一点使用

阅读更多

需求是这样的:

把需要的java类打成一个jar包,并且是指定的名字(它的使用在一个shell脚本中是硬编码的,没办法)

现常用的做法都是使用一个post.sh来把jar包改成所需要的名字

不过刚开始的时候觉得如果能直接打成想要的jar包名字就理想了。assembly里也的确有个叫destName,所以觉得就用它了。不过后来测试的时候发现打成的jar包是zip格式的,貌似assembly把jar包给重新打了。

所以只好折回先打包,再改名。不过需要在post.sh引用生成的jar包名。

只有在files中的文件的那些变量才会被替换,fileSets中的文件只做拷贝。

还有一点是给jar包指定main class:

<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        ...
        <configuration>
          <archive>
            <manifest>
              <addClasspath>true</addClasspath>
              <mainClass>fully.qualified.MainClass</mainClass>
            </manifest>
          </archive>
        </configuration>
        ...
</plugin>

 

今天的使用心得先就写这么多了。

分享到:
评论

相关推荐

    Maven build插件之Maven-assembly-plugin自定义打包

    Maven-assembly-plugin是maven中针对打包任务而提供的标准插件,可以实现自定义打包。主要提供如下功能: ● 提供一个把工程依赖元素、模块、网站文档等其他文件存放到单个归档文件里。 ● 打包成指定格式分发包,...

    maven assembly 插件 代码实现

    使用Maven Assembly插件首先需要在项目的pom.xml文件中添加对应的配置。以下是一个基本的配置示例: ```xml &lt;artifactId&gt;maven-assembly-plugin &lt;version&gt;3.3.0 &lt;descriptorRef&gt;jar-with-dependencies ...

    SpringBoot项目使用maven-assembly-plugin根据不同环境打包成tar.gz或者zip

    `maven-assembly-plugin`是Maven的一个插件,用于生成项目的归档文件,如tar.gz或zip,这在分发和部署软件时非常有用。本篇将详细介绍如何利用`maven-assembly-plugin`在Spring Boot项目中实现这个功能。 首先,`...

    使用Maven assembly打多个自定义包及War包简介

    本篇文章将深入探讨如何使用Maven Assembly插件来创建多个自定义包以及War包,这对于Java开发者来说尤其重要,因为它使得项目打包和分发变得更加方便。 Maven是一个强大的Java项目管理工具,它通过配置文件POM...

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

    Maven3种打包方式中maven-assembly-plugin的使用详解 Maven 作为一个流行的项目管理工具,提供了多种方式来打包项目。其中,maven-assembly-plugin 是一个非常强大和灵活的插件,支持自定义的打包结构,并且可以...

    maven资料Maven Assembly Plugin

    Maven Assembly Plugin 是一个强大的工具,主要用于将项目的输出及其依赖项、模块、站点文档和其他相关文件合并到一个可分发的归档文件中。这对于创建最终可部署的包非常有用,特别是在企业环境中,需要将多个组件和...

    maven打包dubbo服务接口(maven-assembly-plugin)

    本篇文章将详细探讨如何使用Maven的`maven-assembly-plugin`插件来打包Dubbo服务接口。 首先,我们要理解Maven的生命周期和构建过程。Maven有多个生命周期阶段,如`clean`、`compile`、`test`、`package`等,每个...

    maven-assembly 自定义打包方式

    这个插件允许开发者在打包过程中包含额外的资源,如配置文件、文档等,使得最终的发布包更完整,便于部署和使用。 **一、maven-assembly-plugin简介** `maven-assembly-plugin`的主要功能是生成项目的组装包,这个...

    maven-assembly-plugin-example:使用maven-assembly-plugin

    Maven的组装插件的例子 该项目包含maven-assembly-plugin用法的示例阅读 yeoman generator(java)生成的项目

    maven插件assembly使用及springboot启动脚本start.sh和停止脚本 stop.sh

    本文主要关注的是Maven的assembly插件以及Spring Boot项目的启动和停止脚本。 **Maven Assembly 插件** Maven Assembly 插件用于创建自定义的归档文件,如JAR、WAR或ZIP,包含项目的所有依赖、资源和配置文件。这...

    [maven] 常用插件解析.docx

    Maven 插件解析 Maven 作为一个插件框架,其核心并不执行任何具体的构建任务,而是交给插件来完成。每个任务对应了一个...了解 Maven 插件的基本概念和常用插件能够帮助我们更好地使用 Maven,并避免重新发明轮子。

    Assembly插件

    Assembly插件是Maven或Gradle构建系统中的一个组件,它允许开发者通过XML配置文件(assembly.xml)来定义如何打包项目。这个插件提供了高度定制化的打包能力,包括文件的拷贝、重命名、过滤以及归档格式的选择等。它...

    maven插件压缩包

    Maven通过使用一种标准化的项目对象模型(Project Object Model,POM)来管理项目,并提供了一套插件系统,这些插件可以执行构建过程中的各种任务,如编译、测试、打包、部署等。在给定的“maven插件压缩包”中,...

    Maven常用插件整理.docx

    Maven Assembly 插件允许开发者将项目的输出,包括依赖、模块、网站文档和其他文档集成到一个单一的文档中,以便于定制打包。这个插件支持多种输出格式,如zip、tar、tar.gz、gar.bz2、jar、dir和war等。预定义的四...

    assembly项目打包插件,包含windows与linux环境下的启动脚本

    在IT行业中,软件开发往往需要将项目打包成可部署的形式,以便在不同的环境中运行。`assembly`项目打包插件就是这样一个...在实际开发中,正确使用assembly插件可以显著提升工作效率,确保应用在各种环境下的稳定运行。

    xmljava系统源码-spring-boot-assembly:SpringBoot项目使用maven-assembly-plugin根据不

    boot项目中使用maven profiles和maven assembly插件根据不同环境打包成tar.gz或者zip 将spring boot项目中的配置文件提取到外部config目录中 将spring boot项目中的启动jar包移动到boot目录中 将spring boot项目中的...

    maven插件及其使用方法(2)

    在上一部分中,我们介绍了Maven的基本概念和使用,现在我们将深入探讨Maven插件的使用方法,以及它们如何增强Maven的功能。 **一、Maven插件的作用** Maven插件是实现特定构建任务的代码集合,如编译、测试、打包...

    ​实现maven项目中多版本依赖兼容使用解决方案

    这可以通过Maven的`maven-assembly-plugin`或`maven-shade-plugin`来实现,这两个插件可以将所有依赖打包成单个jar,或者创建一个包含所有依赖的“fat jar”。 对于`maven-assembly-plugin`,配置如下: ```xml ...

    揭秘 Maven 的打包神器:深入解析 maven-assembly-plugin 的工作机制

    4. **插件和目标**:Maven 拥有丰富的插件生态系统,每个插件可以执行特定的任务,如编译源代码、运行测试、打包等。 5. **继承和聚合**:Maven 支持项目继承和多模块项目聚合,方便大型项目的管理和构建。 6. **跨...

Global site tag (gtag.js) - Google Analytics