首页 > 其他分享 >认识Maven标签

认识Maven标签

时间:2024-01-13 10:36:42浏览次数:27  
标签:认识 标签 1.8 boot springframework Maven 模块 spring org

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <!--制定了当前POM版本-->
    <modelVersion>4.0.0</modelVersion>
    <!--项目坐标信息-->
    <!--项目主标识,用于定义当前项目属于的实际项目,格式与项目创建的包一致(公司域名反写)-->
    <groupId>com.zzy</groupId>
    <!--项目名/模块名/项目名+模块名-->
    <artifactId>tokenDemo</artifactId>
    <!--当前版本号,一般由三个数字组成,
    第一个数字表示大版本,
    第二个数字表示分支版本,
    第三个数字表示小版本号.
    snapshot 快照
    alpha 内部测试
    beta 公测
    Release 稳定
    GA 正式发布
    -->
    <version>0.0.1-SNAPSHOT</version>
    <!--项目描述名称-->
    <name>tokenDemo</name>
    <!--详细描述-->
    <description>tokenDemo</description>
    <!-- 属性列表,相当于定义的公共常量,引用方式比如:${project.build.sourceEncoding} -->
    <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <spring-boot.version>2.4.2</spring-boot.version>
    </properties>
    
    <!--当使用多模块开发时,可以使用-----开始-->
    <modules>
        <module>多模块的子模块名称</module>
    </modules>
    多模块开发时,父模块中存在的依赖,子模块中的依赖不用加入版本号
	<!--当使用多模块开发时,可以使用-----结束-->

    <!--依赖列表-->
    <dependencies>
        <!--websocket依赖包-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-websocket</artifactId>
        </dependency>

        <!-- hutool  -->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.7.20</version>
        </dependency>
        <!-- hutool  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>
        <!--JWT令牌-->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.9.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.4.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.15</version>
            <!-- 项目如果要使用某个框架或依赖,需要把相关jar包引用到classpath中,
maven项目提供了三个classpath:编译、测试、运行 -->
            <!-- 依赖的范围用于控制依赖于三种classpath关系的,包括:compile、provided、runtime、test、system、import -->
            <!--
              compile:默认范围,编译、测试、运行都有效
              provided:编译和测试有效,最后运行不会被加入
              runtime:在测试和运行的时候有效,编译不会被加入,比如jdbc驱动jar
              test:测试阶段有效,比如junit
              system:与provided一致,编译和测试阶段有效,但与系统关联,可移植性差
              import:导入的范围,它只是用在dependencyManagement中,表示从其它的pom中导入dependency的配置
             -->
            <!-- 表示当前依赖只能在测试代码中引用使用,在主代码中引用使用则报错 -->
<!--            <scope>test</scope>-->
        </dependency>


    </dependencies>
    <!-- 使用dependencyManagement标签管理依赖,实际管理的是依赖的版本号,让
    所有子项目中引用对应依赖而不用显式的列出版本号;
    依赖并不会在当前项目引入 -->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
<!-- 依赖的范围用于控制依赖于三种classpath关系的,包括:compile、provided、runtime、test、system、import -->
            <!--
              compile:默认范围,编译、测试、运行都有效
              provided:编译和测试有效,最后运行不会被加入
              runtime:在测试和运行的时候有效,编译不会被加入,比如jdbc驱动jar
              test:测试阶段有效,比如junit
              system:与provided一致,编译和测试阶段有效,但与系统关联,可移植性差
              import:导入的范围,它只是用在dependencyManagement中,表示从其它的pom中导入dependency的配置
             -->
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <!-- 构建插件 -->
    <build>
        <!--将src/main/java目录下src/main/resources目录下适配通配符的文件也打包打进去.
        因为默认src/main/java下打包时只有class文件,src/main/resources下打包时将各种xml,
        properites,xsd文件等打包jar或者war里面,防止遗漏部分文件,可以在下面的标签设置-->
<!--        <resources></resources>-->
        <!--插件列表-->
        <plugins>
            <!--Source attach plugin 发布的包或者打包的时候会将源码也同时打出来-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring-boot.version}</version>
                <configuration>
                    <mainClass>com.zzy.TokenDemoApplication</mainClass>
                    <skip>true</skip>
                </configuration>
                <executions>
                    <execution>
                        <id>repackage</id>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

</project>

标签:认识,标签,1.8,boot,springframework,Maven,模块,spring,org
From: https://blog.51cto.com/u_16206682/9229381

相关文章

  • 无涯教程-Maven - 环境设置
    Maven是一个基于Java的工具,因此最首要的要求是在您的计算机上安装JDK。第1步-验证Java安装打开控制台并执行以下java命令。OSTaskCommandWindowsOpenCommandConsolec:\>java-versionLinuxOpenCommandTerminal$java-versionMacOpenTerminalmachine:~jo......
  • 无涯教程-Maven - 配置文件
    构建配置文件是一组配置值,可用于设置或覆盖Maven构建的默认值。文件类型构建配置文件主要分为三种类型。Type定义的地方PerProject在项目POM文件pom.xml中定义PerUser在Maven设置xml文件(%USER_HOME%/.m2/settings.xml)中定义Global在Maven全局设置xml文件(%M2_HOME%/co......
  • [Maven] 02 - POM模型与常见插件
    POM模型1依赖关系Maven一个核心的特性就是依赖管理。当我们处理多模块的项目(包含成百上千个模块或者子项目),模块间的依赖关系就变得非常复杂,管理也变得很困难。针对此种情形,Maven提供了一种高度控制的方法。通俗理解:依赖谁就是将谁的jar包添加到本项目中。可以依赖中央仓......
  • Microsoft 365 新功能速递:数据丢失预防和信息保护策略和标签的仅查看模式
    51CTO博客链接:https://blog.51cto.com/u_13637423微软将于2024年2月推出新功能数据丢失预防和信息保护策略和标签的仅查看模式,此功能允许具有仅查看受限权限的管理员查看数据丢失预防和信息保护策略配置的详细信息,而无需编辑策略或标签配置。这将如何影响您的组织:1.     为管......
  • 认识git使用git-01基础认识以及使用
     首先要下载并且安装git下载地址Git(git-scm.com)安装傻瓜式安装目录一.设置用户信息二.为常用指令配置别名编辑三.获取本地仓库1.要使用Git对我们的代码进行版本控制,首先需要获得本地仓库四.基础操作指令1.一次提交的过程编辑2.实现版本回退3.如果在文件夹中又不想提交的文件一.......
  • VUE怎么提示,当用户关闭标签页,提示离开此网站?系统可能不会保存
    如果您想在用户关闭标签页时提示而不是基于路由的导航离开,您可以使用beforeunload事件。在Vue中,可以在组件的mounted钩子中添加事件监听器。以下是一个简单的示例:<template><div><!--YourVuecomponentcontentgoeshere--></div></template><script>expo......
  • k8s集群Node节点管理:节点信息查看及节点label标签管理
    k8s集群Node节点管理:节点信息查看及节点label标签管理Kubernetes集群Node管理一、查看集群信息[root@k8s-master1~]#kubectlcluster-infoKubernetescontrolplaneisrunningathttps://192.168.10.100:6443CoreDNSisrunningathttps://192.168.10.100:6443/api/v1......
  • 认识Spring
    什么是spring我们常说的Spring是指SpringFramework,它是一种开源框架,它支持广泛的应用场景,可以令Java应用程序开发起来更简单。用一句话来概括Spring:包含众多工具的IoC容器。什么是 loC loC全称InversionofControl,翻译成中文是“控制反转”,如何理解“控制反转”?我们举例......
  • maven extension 简单说明
    按照说明maven是3.3.1发布了mavenextension,功能很强大,以前没太注意,在看dremio关于telemetry集成的时候发现是一个很强大的功能,尤其在我们需要提高maven构建性能的时候,以下是一个简单的说明配置说明一般包含了核心扩展以及构建扩展核心扩展jar在${maven.home}/lib/e......
  • 为什么a标签无法下载,无法重命名?
    《1》a标签的href有很大的关系,href属性的地址必须是同源URL,否则,download就会不起作用。1.同源URL会进行下载操作2.非同源URL会进行导航操作3.非同源的资源仍需要进行下载,那么可以将其转换为blob:URL形式《2》a标签的download属性是HTML5新增的属性,它可......