首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用maven程序集插件从jar依赖项中删除文件

是一种常见的构建工具操作,可以通过以下步骤完成:

  1. 配置maven程序集插件:在项目的pom.xml文件中,添加maven程序集插件的配置。示例配置如下:
代码语言:txt
复制
<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-assembly-plugin</artifactId>
      <version>3.3.0</version>
      <configuration>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
          <manifest>
            <mainClass>com.example.MainClass</mainClass>
          </manifest>
        </archive>
      </configuration>
      <executions>
        <execution>
          <id>make-assembly</id>
          <phase>package</phase>
          <goals>
            <goal>single</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>
  1. 运行maven命令:在命令行中执行以下命令,将会生成一个包含所有依赖项的可执行jar文件。
代码语言:txt
复制
mvn clean package
  1. 删除不需要的文件:通过配置maven程序集插件的<excludes>标签,可以指定需要从生成的jar文件中排除的文件。示例配置如下:
代码语言:txt
复制
<configuration>
  <archive>
    <manifest>
      <mainClass>com.example.MainClass</mainClass>
    </manifest>
  </archive>
  <excludes>
    <exclude>path/to/file1</exclude>
    <exclude>path/to/file2</exclude>
  </excludes>
</configuration>

在上述示例中,<excludes>标签中指定了需要排除的文件的路径。可以根据实际情况修改路径和文件名。

  1. 重新运行maven命令:再次执行以下命令,将会生成一个不包含指定文件的可执行jar文件。
代码语言:txt
复制
mvn clean package

这样,通过maven程序集插件的配置,可以从jar依赖项中删除指定的文件,生成一个不包含这些文件的可执行jar文件。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云 Maven 仓库:https://cloud.tencent.com/document/product/1093/35638
  • 云服务器 CVM:https://cloud.tencent.com/product/cvm
  • 云函数 SCF:https://cloud.tencent.com/product/scf
  • 云原生应用引擎 TKE:https://cloud.tencent.com/product/tke
  • 云数据库 MySQL:https://cloud.tencent.com/product/cdb_mysql
  • 云存储 COS:https://cloud.tencent.com/product/cos
  • 人工智能平台 AI Lab:https://cloud.tencent.com/product/ai
  • 物联网平台 IoT Explorer:https://cloud.tencent.com/product/iotexplorer
  • 区块链服务 BaaS:https://cloud.tencent.com/product/baas
  • 腾讯云元宇宙:https://cloud.tencent.com/product/tencent-metaverse
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

0到1教你学Maven(全网最详细)(九)pom文件依赖管理scope属性如何使用,pom全局配置如何实现,资源插件如何使用

依赖管理 依赖的范围 ? scope:表示依赖使用的范围,也就是在maven构建项目的那些阶段起作用。...provided: 写了这个,意思是在 编译, 测试 的时候用到这个依赖,在打包, 安装 的时候不需要这个依赖,因为打包 安装的时候,在tomcat里面已经有这些依赖,你不需要再一次打包 我们如何使用呢...groupId> javax.servlet-api 3.1.0 servlet.jar...(标签名就是变量名) 2.在pom.xml文件的其它位置,使用 ${标签名} 使用变量的值 自定义全局变量一般是定义 依赖的版本号, 当你的项目中要使用多个相同的版本号..., 先使用全局变量定义, 在使用${变量名} 资源插件 ?

1.8K10

Java Maven POM配置参考

使用安装插件在本地安装依赖。该方法是最简单的推荐方法。...test - 此作用域表示此依赖不是应用程序的正常使用所需,仅适用于测试编译和执行阶段。它不是传递性的。 system - 此作用域类似provided。只是你必须提供显式包含它的JAR。... 这只会从这个依赖删除指向maven-core的路径。如果maven-core在POM的其他地方作为直接或传递依赖出现,那么它仍然可以添加到classpath径。...与可能安装和使用,也可能不安装和使用的optional不同,exclusions 会主动依赖移除工件。 继承 Maven为构建管理带来的一个强大的补充是项目继承的概念。...这样做的功能是更改插件依赖列表,可能是通过exclusions删除使用的运行时依赖,或者更改所需依赖的版本。 executions:记住,一个插件可能有多个目标。

42330

Maven使用详解

以往开发项目时,程序员往往需要花较多的精力在引用Jar包搭建项目环境上,而这一工作尤为艰难,少一个Jar包、多一个Jar包往往会报一些让人摸不着头脑的异常。...而Maven就是一款帮助程序员构建项目的工具,我们只需要告诉Maven需要哪些Jar 包,它会帮助我们下载所有的Jar,极大提升开发效率。...compile:编译 将java源文件编译成class文件 test:测试项目 执行test目录下的测试用例 package:打包 将项目打成jar包 clean:删除target文件夹 install...若项目中多个Jar同时引用了相同的Jar时,会产生依赖冲突,但Maven采用了两种避免冲突的策略,因此在Maven是不存在依赖冲突的。...--当计算传递依赖时, 依赖构件列表里,列出被排除的依赖构件。即告诉maven你只依赖指定的项目,不依赖项目的依赖

3K50

全网最全、最新Maven构建工具核心知识,这篇文章包你这辈子也忘不掉Maven!!

--这段代码代表的是外部引入进来的依赖jar包,Maven会自动寻找这个jar包,如果这个jar包在本机存在直接拿来使用,如果不存在会自动去远程仓库获取,并且获取到的远成jar包会在本机仓库保存一份...~tplv-k3u1fbpfcp-zoom-1.image] 在Maven不用导入外部servlet (jar包)与 jsp(jar包),只需要在pom.xml中加入servlet与jsp依赖即可...test :只在测试程序阶段使用这个依赖jar包, provided(提供者) : 在编写主程序和运行程序阶段使用这个依赖jar包。...包存在被compile声明的依赖(即jar包), 使用provided,该项目打包之后,生成的jar包或者war包不存在被peovided声明的依赖(jar包)。...在pom.xm文件添加依赖jar包的时候,如果本机仓库没有,Maven会自动到中央仓库进行下载,不用开发人员自己解决,并且加入依赖的代码(坐标)可以去中央仓库进行复制粘贴。

64220

Gradle基础操作一

文件文件树是有层级结构的文件集合,一个文件树它可以代表一个目录结构或一 ZIP 压缩包的内容结构。文件树是文件集合继承过来的,所以文件树具有文件集合所有的功能。...文件) // 依赖当前项目下的某个模块[子工程] implementation project(':subject01') 本地jar 依赖依赖本地的某个jar包,具体可通过 文件集合、文件树的方式指定...// 直接依赖本地的某个jar文件 implementation files('libs/foo.jar', 'libs/bar.jar') // 配置某文件夹作为依赖 implementation...在 gradle 7.0 已经移除 api java-library 插件提供支持,这些依赖可以传递性地导出给使用者,用于编译时和运行时。...插件提供支持,在声明模块和使用者在编译时需要的依赖,但在运行时不需要。

31320

【Spring Boot系列】构建第一个SpringBoot应用程序

我们可以使用项目管理工具(如 maven 或 gradle)来创建我们的应用程序,在这篇博客,我将使用 Maven 作为依赖管理器。...对于这篇博客,我将使用 Java 17 。截图右边是项目依赖关系,Spring Boot 应用程序基于 Spring 框架。因此,运行应用程序需要一些依赖。...我们可以手动提供这些依赖,也可以使用称为spring-boot-starters的东西,这些是精心策划的依赖,专注于向应用程序添加一些特定功能。...这个父启动器又继承自 spring-boot-dependencies,其中包含 Spring Boot 的兼容精选依赖。...三、Jar包组成我们可以查看 jar 文件里面的内容,我们可以使用命令jar -xvf 提取或解压缩jar文件,输出如下所示查看jar包内部很重要,我们将在后面看到一些优化有助于更快的构建和启动

13210

Maven打包三种方法和常用命令大全

目录 maven常用打包命令 1 方法一:使用maven-jar-plugin和maven-dependency-plugin插件打包 2 方法二:使用maven-assembly-plugin插件打包在...pom.xml配置: 3 方法三:使用maven-shade-plugin插件打包在pom.xml配置: maven常用打包命令 1、mvn compile 编译,将Java 源程序编译成 class...要想jar包能直接通过java -jar xxx.jar运行,需要满足: 1、在jar的META-INF/MANIFEST.MF中指定Main-Class,这样才能确定程序的入口在哪里; 2、要能加载到依赖包...1 方法一:使用maven-jar-plugin和maven-dependency-plugin插件打包 在pom.xml配置: ...如果项目中用到了Spring Framework,将依赖打到一个jar,运行时会出现读取XML schema文件出错。

4K20

一篇文章认识Maven

2.Maven 的两个精典作用 2.1 Maven依赖管理 Maven 的一个核心特性就是依赖管理。当我们涉及到多模块的项目(包含成百个模块或者子项目),管理依赖就变成 一困难的任务。...如下: 项目对象模型(Project Object Model) 每个maven工程中都有一个pom.xml文件(核心配置文件),通过pom.xml文件可以定义项目的坐标、项目依赖、项目信息以及插件目标等...例如,项目依赖Struts2.3.24,通过在pom.xml文件定义其依赖即可将Struts2的jar包自动加入到工程,如下所示便是Struts2.3.24的依赖定义。...指的是项目编译、测试、运行、打包、安装 ,部署整个过程都交给 maven 进行管理,这个 过程称为构建。一键构建 指的是整个构建过程,使用 maven 一个命令可以轻松完成整个工作。...运行结果,可以看出:当后面的命令执行时,前面的操作过程也都会自动执行 4.Maven 仓库 本地仓库 :用来存储远程仓库或中央仓库下载的插件jar 包,项目使用一些插件jar 包, 优先从本地仓库查找

41920

maven 学习总结

–mvn test:运行应用程序的单元测试 –mvn package:依据项目生成jar文件,以备依赖此项目时使用 –mvn install:将项目的jar文件添加到库, –mvn site:生成项目相关信息的网站...7、依赖管理 为了给项目添加一个依赖,必须将此依赖添加到pom.xml文件。下次运行Maven的时候,它将从Ibiblio存储库得到这个依赖,并且将此依赖添加到项目构建路径。...改变Maven的存储库路径只需简单地编辑其安装目录下 conf文件夹下面的settings.xml文件即可 在Maven使用依赖是简单的。让我们看看往上述pom.xml文件添加一个依赖的情况。...让我们看看一个例子,它展示了如何在应用程序使用多个存储库。在以下pom.xml文件摘录的片断,我们设置了两个存储库来让Maven寻找依赖。...下面pom.xml文件插件配置示例是直接Maven2.0网站上得来的。这个插件是用来配置编译选项的。

1.7K50

开发角度看四类企业应用架构1: 通过Maven编译并运行一个Java应用

5.依赖描述项目依赖的资源。 这些资源是正确构建和运行项目所必需的。 Maven指定的存储库下载并链接依赖关系。 6.该项目的插件使用Maven的好处是自动处理源代码编译和资源包含在工件。...当我们在pom.xml文件命名依赖关系时,可以给它们一个范围。 这些范围控制构建生命周期中依赖使用位置,以及它们是否包含在构件。...mvn install -这就将artifact安装在本地Maven存储库,以用作其他项目的依赖的包。...在这个项目中,使用exec-maven-plugin从命令行或JBoss Developer Studio运行项目中的主类。...尽管此项目不使用任何外部依赖,但具有大量依赖JAR文件的项目可以打包为单个大型的fat jar文件,可以直接执行,而无需将所有相关的JAR文件明确添加到CLASSPATH maven-assembly-plugin

1.4K20

Apache Maven 最全教程,7000 字总结!

借助于maven就可以将一个项目拆分成多个工程 ② 项目中使用jar包,需要“复制”、“粘贴”项目的lib 同样的jar包重复的出现在不同的项目工程,你需要做不停的复制粘贴的重复工作。...借助于maven,可以将jar包保存在“仓库”,不管在哪个项目只要使用引用即可就行。...借助于maven,所有的jar包都放在“仓库”,所有的项目都使用仓库的一份jar包。...img ③ 构建的各个环节 清理clean:将以前编译得到的旧文件class字节码文件删除 编译compile:将java源程序编译成class字节码文件 测试test:自动测试,自动调用junit程序...报告report:测试程序执行的结果 打包package:动态Web工程打War包,java工程打jar包 安装install:Maven特定的概念-----将打包得到的文件复制到“仓库”的指定位置

1.3K40

Maven笔记

需要很多第三方功能,需要很多jar文件,需要手工网络获取各个jar 需要管理jar的版本,比如你需要的是mysql.5.1.5.jar,那你不能给一个mysql.4.0.jar 管理jar文件之间的依赖...maven支持的构建包括有: 清理:把之前项目编译的东西删除掉,为新的编译代码做准备, 编译:把程序源代码编译为执行代码,java-class文件(批量的,maven可以同时把成千上百的文件编译为class...第一次使用会下载东西 maven工具执行的操作需要很多插件(Java类–jar文件)完成的 下载的是jar文件–叫做插件插件是完成某些功能 下载的东西存放在默认仓库(本机仓库):C:\Users\(登录操作系统的用户名...> 指定你的目录(不要使用中文目录) 2.3、仓库 1、仓库:仓库是存放东西的,存放,maven使用jar包和我们项目使用jar > maven使用插件(各种jar) >我项目使用jar(...scope表示依赖使用的范围,也就是maven构建项目的哪些阶段起作用。

36940

Java 17:和遗留 25 年的漏洞 Say Goodbye

你的应用程序包含你和你的团队编写的代码,它可能还包含依赖。如果 JDK 删除了某些内容,可能会破坏代码、依赖关系,或者两者都破坏。这通常有助于确保这些依赖是最新的,以解决这些问题。...这意味着,作为升级前评估过程的一部分,您对依赖要有很好的了解。 大多数功能不会一下子 JDK 全部删除。首先,功能被标记为弃用。...Maven 版本插件和 Gradle 版本插件会显示你有哪些依赖,并列出最新的可用版本。 请注意,这些工具只显示您所使用文件的新版本——但有时文件名称会更改,会产生分叉,或者代码会移动。...你可以使用来自 Gluon 的独立 JavaFX 构建,或者将 OpenJFX 依赖添加到你的项目中。 字体。曾经 JDK 包含一些字体,但是 Java 11 开始,它们被删除了。...JDK 11 中最大的变化是删除了 Java EE 模块。前面提到的 JAXB 等 Java EE 模块被许多应用程序使用。既然这些模块不再存在于 JDK ,你应该添加相关的依赖

1K30

Maven】你好,Maven >>> 与Maven的初次见面~

编译:Java源程序编译成 *. class字节码文件。 测试:运行提前准备好的测试程序。 报告:针对刚才测试的结果生成一个全面的信息。...---- ⚪依赖 概念: 如果工程A中使用到了工程B的类、接口配置文件等资源,那么我们就可以说A依赖B,简单来讲就是jar包与jar包之间的相互依赖。...依赖管理需要完成的事情: jar 包的下载:使用Maven以后, jar包会规范的远程仓库下载带本地。 jar 包间的依赖:通过依赖的传递性自动完成。...项目信息的连贯站点:使用与构建过程相同的元数据,Maven能够生成一个网站或PDF,包括您想要添加的任何文档,并将有关项目开发状态的标准报告添加到该标准报告。...Maven 能够发布单个输出,例如 JAR、包含其他依赖和文档的存档,或作为源代码分发。 依赖关系管理:Maven鼓励使用JAR和其他依赖关系的中央存储库。

1.2K30

看了必懂的Maven最全教程!!!

借助于maven就可以将一个项目拆分成多个工程 ② 项目中使用jar包,需要“复制”、“粘贴”项目的lib 同样的jar包重复的出现在不同的项目工程,你需要做不停的复制粘贴的重复工作。...借助于maven,可以将jar包保存在“仓库”,不管在哪个项目只要使用引用即可就行。...借助于maven,所有的jar包都放在“仓库”,所有的项目都使用仓库的一份jar包。...③ 构建的各个环节 清理clean:将以前编译得到的旧文件class字节码文件删除 编译compile:将java源程序编译成class字节码文件 测试test:自动测试,自动调用junit程序 报告report...:测试程序执行的结果 打包package:动态Web工程打War包,java工程打jar包 安装install:Maven特定的概念-----将打包得到的文件复制到“仓库”的指定位置 部署deploy

1.1K20

可能是最详细的 Maven 教程

借助于maven就可以将一个项目拆分成多个工程 ② 项目中使用jar包,需要“复制”、“粘贴”项目的lib 同样的jar包重复的出现在不同的项目工程,你需要做不停的复制粘贴的重复工作。...借助于maven,可以将jar包保存在“仓库”,不管在哪个项目只要使用引用即可就行。...借助于maven,所有的jar包都放在“仓库”,所有的项目都使用仓库的一份jar包。...③ 构建的各个环节 清理clean:将以前编译得到的旧文件class字节码文件删除 编译compile:将java源程序编译成class字节码文件 测试test:自动测试,自动调用junit程序 报告report...:测试程序执行的结果 打包package:动态Web工程打War包,java工程打jar包 安装install:Maven特定的概念-----将打包得到的文件复制到“仓库”的指定位置 部署deploy

1.1K20
领券