当前位置: 首页 > news >正文

做外贸需要用到什么网站国外的网站服务商

做外贸需要用到什么网站,国外的网站服务商,西地那非对早些泄能治好吗,网站新闻模块代码晚上好#xff0c;愿这深深的夜色给你带来安宁#xff0c;让温馨的夜晚抚平你一天的疲惫#xff0c;美好的梦想在这个寂静的夜晚悄悄成长。 目录 前言 1.1 概念 什么是 Maven#xff1f; Maven 的核心概念 1.2 maven依赖坐标 1.3 maven仓库 1.4 maven安装 1.5 mave…  晚上好愿这深深的夜色给你带来安宁让温馨的夜晚抚平你一天的疲惫美好的梦想在这个寂静的夜晚悄悄成长。 目录 前言 1.1 概念 什么是 Maven Maven 的核心概念 1.2 maven依赖坐标 1.3 maven仓库 1.4 maven安装 1.5 maven常用命令 1.6 maven生命周期 1.7 IDEA中集成maven(重点) 1.关闭当前工程 2.找到全局配置 3.找到maven相关的配置 4.完成本机自己安装的maven的配置 1.8 maven项目创建与导入 1.8.1 maven项目创建 1.8.2 maven工程的导入 1.9 maven依赖配置 1.10 maven依赖范围 二、Maven的进阶 1.maven的分模块开发 2.maven继承 2.1 概念与使用 2.2 继承的内容 扩展介绍 2.3 自定义属性 3.maven的聚合  如何使用聚合概念 4. Maven继承和聚合的区别 继承Inheritance 聚合Aggregation 主要区别 前言 在软件开发的日常工作中有效的项目管理是确保项目成功的关键。Maven 是一个强大且广泛使用的项目管理工具不仅仅是 Java 项目它已经成为许多其他语言项目的选择。本文将深入探讨 Maven 的核心概念、工作原理及其在现代软件开发中的重要性。 一、Maven的基础使用 1.1 概念 什么是 Maven Maven 是一个基于项目对象模型Project Object Model, POM的构建工具它主要用于自动管理和构建Java项目。通过 Maven开发人员可以更轻松地管理项目的构建、报告和文档生成。来源于apache使用Java语言实现的。 Maven 的核心概念 项目对象模型POM POM 是 Maven 中的关键概念它是一个 XML 文件描述了项目的配置信息、依赖关系和构建设置。POM 定义了项目的标识、依赖、插件、构建目标等。 依赖管理传统使用jar包存在的问题: 1.下载麻烦, 2.项目体积变大,3.jar包冲突 Maven 通过中央仓库Central Repository和其他远程仓库来管理项目依赖。通过简单地在 POM 中声明依赖Maven 可以自动下载所需的库文件并确保它们的版本兼容性和一致性。 生命周期和插件 Maven 提供了一组生命周期阶段如 clean、compile、test、package 等每个阶段都与一个或多个插件相关联。插件提供了实现特定任务的能力如编译代码、运行单元测试、打包应用程序等。统一的项目结构 1.2 maven依赖坐标 maven的其中一个功能是依赖管理maven官方维护了一个服务器该服务器上存放了目前所有公共的开源的jar包使用maven的依赖管理功能可以自动从该服务器上下载指定的jar包。 maven坐标的作用: 用于唯一的定位maven中的一个jar包 maven坐标的组成 groupId: 指定公司(公司的域名)artifactId:指定项目(项目名)version: 版本 1.3 maven仓库 作用: 存储jar包的 分类: 中央仓库: maven官方维护的服务器(美国)上的某个文件夹。远程仓库: 公司内部局域网中的某个服务器上的某个文件夹。本地仓库: 程序员自己电脑上的某个文件夹。 Maven的云盘装机资料 链接: https://pan.baidu.com/s/1dpawKgfRT01Iv_Cn5bY4Ew?pwd1234 提取码: 1234 1.4 maven安装 1.解压资料中提供的maven安装文件到当前目录 2.把解压出来的文件夹拷贝到一个没有中文目录的文件夹中 3.配置本地仓库和镜像 在安装目录下提供了一个repository目录,该目录中我已经提前准备好了一些必须要使用的jar包(这些jar包将来使用的时候就无需去中央仓库下载) 在【安装目录/conf/settings.xml】配置文件中进行配置本地仓库 在【安装目录/conf/settings.xml】配置文件中进行配置镜像 4.配置环境变量 4.1 在用户变量中新建 MAVEN_HOME,变量的值就是maven的安装目录【bin目录的上一级目录】 4.2 在用户变量中的Path变量中添加 %MAVEN_HOME%\bin 4.3 检测环境变量是否配置正确 1.5 maven常用命令 clean: 清理之前编译好的内容compile: 用于编译当前工程test: 用于执行当前工程的测试代码package: 用于把当前的项目打成war|jarinstall: 用于把当前工程的jar包安装到本地仓库site: 用于生成当前工程的站点报告(api文档说明书...)deploy: 用于将当前工程发布到远程仓库 1.在maven中任何操作的背后都是插件 2.在资料中已经提前提供好了一个maven工程 验证命令 注意编译产生的内容在 当前工程的target目录中 1.6 maven生命周期 分类 清理生命周期: clean 默认生命周期: 同一生命周期内后面的命令执行,那么前面的命令会自动执行。 compiletestpackageinstalldeploy 站点生命周期: site 1.7 IDEA中集成maven(重点) 1.关闭当前工程 2.找到全局配置 3.找到maven相关的配置 4.完成本机自己安装的maven的配置 1.8 maven项目创建与导入 1.8.1 maven项目创建 1.创建项目 2.选择项目的类 3.填写当前工程详细信息 4.对pom.xml中的内容进行解释 1.8.2 maven工程的导入 注意: 在IDEA中,提供了maven操作的一些快捷面板,更好的操作和观察当前工程的maven的使用情况 1.9 maven依赖配置 位置: 需要在当前工程的pom.xml文件中完成配置 使用: project!--可以配置多个依赖--dependencies!--一个dependency标签,代表一个jar包依赖--dependencygroupId公司或者组织名/groupIdartifactId项目名/artifactIdversion版本号/version/dependency!--一个dependency标签,代表一个jar包依赖--dependencygroupId公司或者组织名/groupIdartifactId项目名/artifactIdversion版本号/version/dependency/dependencies /project 如果不知道依赖的坐标,可以上 https://mvnrepository.com/ 查找 注意: 当修改了pom.xml配置文件后,一定要记得刷新maven,这样配置才会生效(maven可以自动的帮你下载和加载指定的依赖) ?xml version1.0 encodingUTF-8? !--这是 XML 文件的声明指定了 XML 的版本和字符编码-- !--这是 Maven POM 文件的根元素指定了 XML 命名空间和版本信息。-- project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd !-- xmlns:xsi 和 xsi:schemaLocation 这些属性定义了 XML 文件中的命名空间和对应的 XML 模式XSD)--!--maven的模型版本。不要管--!--当前工程的坐标--groupIdcom.itheima/groupIdartifactIdmaven_p1/artifactIdversion1.0-SNAPSHOT/version!--当前maven项目里的一些变量和值--properties!--编译maven项目使用的jdk版本,跟你创建工程时选中的jdk版本是一种的--maven.compiler.source17/maven.compiler.sourcemaven.compiler.target17/maven.compiler.target/properties!--配置依赖--dependencies!--配置slf4j的依赖: 如果本地库中已经存在,则会有提示,如果本地库中不存在,去mvnrepository.com这个网站搜索并刷新当前maven--dependency!--公司名--groupIdorg.slf4j/groupId!--项目名--artifactIdslf4j-api/artifactId!--版本--version1.7.26/version/dependency!--logback-core依赖--dependencygroupIdch.qos.logback/groupIdartifactIdlogback-core/artifactIdversion1.2.3/version/dependency!--logback-classic依赖--dependencygroupIdch.qos.logback/groupIdartifactIdlogback-classic/artifactIdversion1.2.3/version/dependency/dependencies /project 验证jar包的可用性 maven的传递依赖 如果A.jar中依赖了B.jar, 当前工程中引入了A.jar,此时当前工程也会传递依赖于B.jar 1.10 maven依赖范围 概念: 依赖生效的阶段 阶段: 源码: 测试源码和主程序源码编译: 测试编译和主程序编译运行: 测试运行和主程序运行 注意: 如果引入的依赖并没有指定依赖范围,那么默认在三个阶段全部生效 指定依赖的生效范围: compile 默认的依赖范围适用于编译、测试和运行时。依赖项将被包含在最终的打包文件例如 JAR中。 provided 适用于编译和测试阶段但在运行时由目标环境如 Java EE 容器提供。这类依赖项不会被打包到最终的构建产物中(不会被包含在最终的部署包中)。简单来说就是为了项目不报错编译时要检查代码的语法和类型骗骗IDEA。比如Servlet API 就是一个典型的 provided 依赖。这意味着在编译和测试时需要依赖但不会包含在最终的打包文件中。编译过程需要依赖于一些库和依赖项以便编译器能够找到并正确地编译代码中引用的类和接口。例如如果你的代码中使用了某些第三方库比如Apache Commons库那么编译器在编译时就需要能够找到并使用这些库。 runtime 依赖项仅在运行时可用不参与编译和测试。典型应用是像 JDBC 驱动程序这样的库在运行时由类加载器加载。在编译项目代码时并不需要这些驱动程序只有在项目运行时才需要它们来连接数据库。 test 仅在测试编译和运行测试代码时可用。这些依赖项不会被包含在主项目的运行时或打包文件中。 system 类似于 provided但需要显式地提供 JAR 文件的路径。不推荐使用因为它打破了 Maven 的依赖解析机制。在 Maven 构建系统中system 依赖范围是指在构建项目时需要显式提供 JAR 文件的路径。这个范围下的依赖通常是不推荐使用的因为它绕过了 Maven 的标准依赖管理机制可能会导致构建不一致或不稳定的问题。systemPath 元素指定了 JAR 文件的路径。systemPath${project.basedir}/lib/example-lib-1.0.jar/systemPath import 仅适用于 dependencyManagement部分的依赖项。表示当前 POM 文件中声明的依赖管理部分应该被导入到依赖项集中。 扩展optional 设置为true则该依赖在打包的时候不会被打进jar包同时不会通过依赖传递传递到依赖该项目的工程。 二、Maven的进阶 1.maven的分模块开发 2.maven继承 2.1 概念与使用 maven继承简化依赖配置统一管理依赖将公共的依赖提取和统一版本管理(版本锁定)。 公共提取的好处将共性的属性和依赖抽取出来提高代码的重用性。属性和依赖需要修改时只需在一个地方(父类)进行修改所有子类都会继承这一变更减少了维护的工作量。 父工程的dependencyManagement统一管理依赖版本进行版本锁定防止版本冲突。 版本锁定的好处进行统一的版本管理防止版本不一致引发的不必要的错误。 版本锁定的注意事项这样只会加载版本不会把依赖加载进去谁用谁重写(并不需要指定版本)。 maven不支持多继承支持多层继承。 2.2 继承的内容 依赖管理 子项目可以继承父项目中声明的依赖项。这意味着父项目中定义的依赖库和版本信息可以在子项目中自动生效无需重复声明。 插件配置 父项目中配置的 Maven 插件可以被子项目继承和使用。这使得可以在父项目中统一管理和配置插件而子项目则可以共享这些配置。 属性定义 父项目中定义的属性可以在子项目中被继承和使用。例如定义项目版本号、编译器版本等属性可以在所有子项目中共享和使用。 构建配置 父项目中的构建配置如构建插件的配置、构建目录的定义等可以被子项目继承。这样可以确保所有项目在构建时遵循相同的规范和配置。 资源管理 父项目中的资源过滤、资源目录配置等可以被子项目继承从而实现资源的统一管理和共享。 扩展介绍 设置打包方式为pom的作用 jar :普通模块打包springboot项目基本都是jar包(内嵌tomcat运行)war普通web程序打包需要部署在外部的tomcat服务器中运行pom父工程或聚合工程该模块不写代码仅进行依赖管理 设置 Maven 项目的打包方式为 pom 主要代表这个项目本身不会生成可执行的 Jar 文件或者 War 文件而是作为父项目。因为父类项目只用于来简化项目管理和构建过程连src目录都没有你就算打包也没有意义。 所以父工程的打包方式应该为pom这样打包不会生成可执行的构建产物。 设置relativePath的作用 relativePath元素用于指定当前项目与其父项目之间的相对路径。 如果父项目的 pom.xml 文件不在本地仓库中例如正在开发中那么可以通过 relativePath 元素指定父项目的相对路径使 Maven 能够直接在指定路径中找到父项目的 pom.xml 文件。如果不指定会现在仓库中找找不到就会报错。 2.3 自定义属性 定义方式在properties标签中通过标签声明。 使用方式${属性名}。  简化配置管理 Maven的项目配置文件pom.xml中可能会包含大量重复的信息例如版本号、路径等。通过定义自定义属性可以将这些重复的信息抽取出来集中管理从而简化配置减少配置文件的冗余和错误。 提高可维护性 当项目中需要更新或者修改某些共享的信息时如果没有使用自定义属性可能需要逐个修改每个使用到这些信息的地方这样容易出错且费时费力。而使用自定义属性后只需要修改定义属性的地方所有引用该属性的地方都会自动更新大大提高了项目的可维护性。 增强灵活性 自定义属性使得项目配置更加灵活和可配置化。例如在不同的环境开发、测试、生产中可以通过修改属性值来适应不同的环境需求而不需要修改大量的代码或配置文件。 提高可读性和可理解性 使用自定义属性可以使项目配置文件更加清晰和易于理解。定义了适当命名的属性可以使配置文件中的意图更加明确降低了理解和维护成本。 3.maven的聚合  在 Maven 中聚合Aggregation指的是将多个相关的 Maven 项目组织在一起形成一个更大的项目称为聚合项目或者父项目。聚合项目本身不包含实际的代码它主要用来管理和组织其他子模块。这种模型使得你可以统一构建、测试、部署和发布多个相关的项目从而提高项目管理的效率和一致性。 当一个模块需要打包的时候需要想把父工程和依赖的工程打包才可以完成打包相当麻烦。 maven聚合就是为了解决这个问题 将多个模块组织成一个整体同时进行Maven插件操作。让你实现项目一键构建、打包、安装等操作因此我们无需根据依赖关系手动构建直接在聚合工程构建即可(自动根据依赖关系构建和顺序无关)。 如何使用聚合概念 创建聚合项目 首先你需要创建一个新的 Maven 项目作为聚合项目。在创建项目的时候需要选择 pom 作为项目的 packaging 类型这样可以确保这个项目本身不包含任何实际的代码只是用来管理其他子模块。 定义子模块 在聚合项目的 POM 文件中使用 modules 元素列出所有的子模块。例如 modulesmodulesubmodule1/modulemodulesubmodule2/module!-- 可以列出所有的子模块 -- /modules这样定义后Maven 就知道这个聚合项目管理着哪些子模块。 依赖管理 聚合项目的 POM 文件可以定义全局的依赖管理和插件配置。这些配置会被所有子模块继承和共享从而确保各个子模块使用的依赖库和构建插件保持一致性。 统一构建管理 在进行构建时可以在聚合项目的根目录下执行 Maven 命令如 mvn clean installMaven 将会递归地构建所有列出的子模块。这样可以确保所有子模块都被正确构建和部署而不需要单独进入每个子模块目录执行构建命令。 4. Maven继承和聚合的区别 在 Maven 中继承inheritance和聚合aggregation是两种不同的关系模型用于管理多模块项目的依赖和结构。 继承Inheritance 继承指的是 Maven POM 文件之间的父子关系。在 Maven 中可以通过定义一个父 POM通常是一个空的 POM或者只包含通用配置的 POM来统一管理子项目的配置和依赖。父 POM 中定义的配置和依赖会自动应用到所有子模块中。这样做的好处是可以减少重复配置统一管理项目中的共享配置和依赖提高项目的维护性和一致性。 聚合Aggregation 聚合指的是将多个 Maven 项目组织在一起形成一个更大的项目通常是一个父项目POM packaging。聚合项目本身不包含实际的代码它只是用来管理和组织其他子模块。通过聚合可以将多个相关的项目子模块归为一体方便统一构建、部署和管理。聚合项目的 POM 文件中指定了它所管理的子模块因此它可以感知到哪些模块属于它的一部分。 主要区别 管理范围 继承是从父 POM 向子 POM 传递配置和依赖信息父 POM 可以定义全局的配置和依赖子 POM 继承这些信息。聚合是从一个父项目管理多个子项目父项目本身可能并不包含实际的代码只是用来组织和管理子项目。 POM 文件打包方式 无论是继承还是聚合它们的 POM 文件的 packaging 都是 pom这表示它们本身不会生成可执行的 artifact而是用来管理其他项目或模块。 关系感知性 继承是单向的父 POM 知道它有哪些子模块但子模块并不知道它们是从哪个父 POM 继承的配置和依赖。聚合是双向的父项目聚合项目知道它管理的子模块而子模块也知道它们属于哪个父项目聚合项目。 综上所述继承和聚合在 Maven 中是两种不同的管理和组织项目结构的方式各自有其独特的作用和适用场景。
http://www.tj-hxxt.cn/news/219020.html

相关文章:

  • js网站一键变灰wordpress 回复楼层
  • 网站开发公司成都dw怎样去除网站做的页面模板
  • 自己搭建视频播放网站扬中网站建设策划
  • 北京网站维护高中信息技术网站建设
  • 提供网站建设框架机械做网站
  • 网站后台生成文章很慢建网站怎么赚流量
  • 在线做编程题的网站视频制作免费
  • 洛阳建网站公司scrm服务商
  • 沈阳网站建设选网龙怎么样建网站啊
  • 手机版网站推荐赣州本地网
  • 自己怎么样做游戏网站html改变字体大小代码
  • 做商业广告有什么网站好推销的专业网站优化seo
  • 南充建网站的资料百度编辑器wordpress
  • 网站开发怎么收客户费广西网站建设公司哪家好
  • 图片链接生成网站深圳营销型网站建设推广服务
  • 北京上云网站建设公司中国视觉设计网
  • 哪个网站做课件能赚钱京网站制作公司
  • 重庆网站设计制造厂家做设计在哪个网站上找高清图片大全
  • 宣武上海网站建设河北响应式网站建设
  • 吉林省住房和城乡建设部网站外汇直播网站建设开发
  • 网站建设最新惠州做网络推广的公司
  • 电商网站开发视频教程wordpress 仿简书
  • 网站建设header百度怎么做网站广告
  • 怎么在网站上添加地图公司网站想维护服务器
  • 建站哪个网站比较好做网站的费用会计分录
  • 网站平台开发报价单成都武侯区建设局门户网站
  • 做网站哪里最便宜谁有好的网站推荐一个
  • 浙江省住房和城乡建设局网站首页长春市城建网站
  • 宜昌做网站要什么条件帮忙建设公司网站
  • sgs网站开发公司类似in a wordpress