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

长春做网站哪家好国内免费b2b网站大全

长春做网站哪家好,国内免费b2b网站大全,中国人做网站卖美国人,深圳做网站排名公司一、Maven是什么 简单来说Maven是一个标准化的java管理和构建工具,它提供了一系列规范,包括项目结构,构建流程(编译,测试,打包,发布……),依赖管理等。 标准化就是定下…

一、Maven是什么

简单来说Maven是一个标准化的java管理和构建工具,它提供了一系列规范,包括项目结构,构建流程(编译,测试,打包,发布……),依赖管理等。

标准化就是定下的规矩,不能变,该是什么结构就是什么结构,该怎么构建就怎么构建。


二、Maven项目的标准项目结构

在这里插入图片描述

  • pom.xml:项目描述文件,maven项目管理的关键所在,提供项目版本,java版本管理,模块管理,依赖管理等关键信息
  • src/main:存放Java源码的目录
  • src/main/resources:存放资源文件的目录
  • src/test:存放测试源码的目录
  • target:所有编译、打包生成的文件都放在target目录里

三、pom.xml文件结构分析

文件基本结构如图

<project ...><modelVersion>4.0.0</modelVersion><groupId>com.itranswarp.learnjava</groupId><artifactId>hello</artifactId><version>1.0</version><packaging>jar</packaging><properties>...</properties><dependencies><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.2</version></dependency></dependencies>
</project>

其中:

  • modelVersion:指定POM(Project Object Model)结构版本,这个版本规定好了能够在Maven项目配置文件中使用的结构和元素
  • groupId:类似于Java包名,通常是公司或者组织名称
  • artifactId:java类名,通常是项目名称
  • version:版本
  • dependency:项目的依赖包

引用其他第三方库时,用groupId,artifactId, version确定这个库


三、依赖管理

Maven通过递归式的分析包的依赖关系,不断导入依赖的包,解决包的管理关系。

当我们声明了abc的依赖时,Maven自动把abc和xyz都加入了我们的项目依赖,不需要我们自己去研究abc是否需要依赖xyz。

因此,Maven的第一个作用就是解决依赖管理。我们声明了自己的项目需要abc,Maven会自动导入abc的jar包,再判断出abc需要xyz,又会自动导入xyz的jar包,这样,最终我们的项目会依赖abc和xyz两个jar包。
在这里插入图片描述
不同的依赖关系 dependence中的<scope>项目:

  • compile:编译时需要用到的jar包(默认)
  • test:编译Test时需要用到该jar包
  • runtime:编译时不需要,运行时需要,如jdbc
  • provided:编译时需要用到,但运行时由某个jdk或服务器提供

Maven通过维护一个中央仓库的信息,来维护依赖的下载信息,所有第三方库将自身的jar及相关信息上传至中央仓库,Maven就可以从中央仓库把依赖库下载到本地。一个jar包一旦被下载过,就会被Maven自动缓存在本地目录。

如果我们要引用一个第三方组件,比如okhttp,如何确切地获得它的groupId、artifactId和version?方法是通过search.maven.org搜索关键字,找到对应的组件后,直接复制

进入到pom.xml所在目录,输入
$ mvn clean package
在target目录下获得自动打包的jar


四、模块管理

可以立即为,Maven项目下分为多个不同的模块,每个模块本质上就是一个独立的maven项目,每个项目有独立的pom.xml.这也是大型软件降低复杂度的必要方法。

如果子模块的pom.xml存在多个相同的依赖,可以在大项目下提取出一个pom.xml,这样结构为
在这里插入图片描述
模块a可以简化为:

<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 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>com.itranswarp.learnjava</groupId><artifactId>parent</artifactId><version>1.0</version><relativePath>../parent/pom.xml</relativePath></parent><artifactId>module-a</artifactId><packaging>jar</packaging><name>module-a</name>
</project>

即使用<parent>继承parent的内容


如果模块A依赖模块B,则模块A需要模块B的jar包才能正常编译,我们需要在模块A中引入模块B

    ...<dependencies><dependency><groupId>com.itranswarp.learnjava</groupId><artifactId>module-b</artifactId><version>1.0</version></dependency></dependencies>

编译时在根目录创建pom.xml统一编译,同时添加modules模块表明下属模块

<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 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.itranswarp.learnjava</groupId><artifactId>build</artifactId><version>1.0</version><packaging>pom</packaging><name>build</name><modules><module>parent</module><module>module-a</module><module>module-b</module><module>module-c</module></modules>
</project>
http://www.dt0577.cn/news/41105.html

相关文章:

  • 网站同城在线哪里做手机优化助手
  • 江门网站制作计划竞价托管一般要多少钱
  • 网站建设xs029下载百度语音导航地图
  • 好的网站模板新网络营销
  • 公司做网站需准备资料指数基金怎么选
  • 坪山做网站的公司手机百度网盘下载慢怎么解决
  • 网站建设的界面f分百度关键词搜索引擎排名优化
  • 商务网站建设策划书新网站seo
  • 自己做网站需要买什么全网软文推广
  • 住房城乡建设厅网站准考证南宁百度seo排名优化软件
  • 巴顿品牌设计上首页的seo关键词优化
  • 深圳市建设管理委员会网站搜索引擎优化论文
  • 华强方特网站开发沈阳seo合作
  • 网站为何要屏蔽百度蜘蛛重庆seo按天收费
  • wordpress 音频播放seo网站优化做什么
  • 深圳龙华做网站公司上海建站seo
  • 找人做黑彩网站靠谱么个人网站制作多少钱
  • 网络广告发布的形式主要包括seo网站优化方案
  • 百度统计wordpress肇庆seo
  • 炽乐清网站建设怎么做百度网页推广
  • 淘宝美工做倒计时图片网站百度电脑版登录网站
  • ppt公司简介模板搜索引擎优化论文
  • wordpress图片盗链seo整站优化哪家好
  • 大连零基础网站建设教学电话口碑营销成功案例
  • 网站建设订单模板下载外贸seo公司
  • 福田附近公司做网站建设多少钱厦门零基础学seo
  • 天猫商城商品来源快速优化网站排名软件
  • 网站建设ui营销工具
  • 深圳做网站的网络公semir森马
  • 搞一个网站多少钱苏州优化seo