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

山东一建建设有限公司官方网站对seo的理解

山东一建建设有限公司官方网站,对seo的理解,网站建设网页制,wordpress 机械主题目录一.概述二.优点三.安装与配置1. 官网下载2. 配置环境变量3. 检验4. 配置国内镜像(可选)5. IDEA配置三.工程结构四.生命周期1.Initialization阶段2.Configuration阶段3.Execution阶段五.Task六.常用任务指令七.引入依赖1.本地依赖2.项目依赖3.直接依赖八.依赖类型九.插件十.…

目录

        • 一.概述
        • 二.优点
        • 三.安装与配置
          • 1. 官网下载
          • 2. 配置环境变量
          • 3. 检验
          • 4. 配置国内镜像(可选)
          • 5. IDEA配置
        • 三.工程结构
        • 四.生命周期
          • 1.Initialization阶段
          • 2.Configuration阶段
          • 3.Execution阶段
        • 五.Task
        • 六.常用任务指令
        • 七.引入依赖
          • 1.本地依赖
          • 2.项目依赖
          • 3.直接依赖
        • 八.依赖类型
        • 九.插件
        • 十.依赖冲突

一.概述

Java中主要有三大项目构建工具:Gradle、Maven和Ant,Gradle是继Maven之后的新一代构建工具,他采用基于Groovy的特定领域语言(DSL)作为脚本,相比通过XML来配置的传统构建工具(maven),最直观的感受就是脚本更加的简洁优雅

二.优点

  • 多语言支持:Java、Groovy、Scala、C++都有良好的支持
  • 跨平台支持:Gradle是基于JVM的,只要有JVM就可以让Gradle运行
  • 脚本灵活性:Gradle使用的是Groovy或Kotlin语言作为脚本的编写语言,可以使用Groovy灵活的编写任务完成想要的任何事情
  • 速度更快:Gradle有增量构建、构建缓存等概念,构建效率比Maven快些

三.安装与配置

1. 官网下载

进入官网https://gradle.org/releases/,点击binary-only进行下载,然后将下载好的压缩包解压到任意位置
在这里插入图片描述

2. 配置环境变量

新建一个名为GRADLE_HOME的变量,变量值->浏览目录选择Gradle根目录
在这里插入图片描述
配置Path->指定Gradle的bin目录
在这里插入图片描述

3. 检验

CMD窗口输入以下命令,如果出现版本号等信息,说明安装配置成功

gradle -v

在这里插入图片描述

4. 配置国内镜像(可选)

同Maven一样,Gradle也可以配置国内镜像来提升下载速度,我们打开用户目录的.gradle文件夹,创建一个init.gradle文件

allprojects {repositories {maven{ url 'http://maven.aliyun.com/repository/public/'}mavenCentral()}
}

在这里插入图片描述

5. IDEA配置

在这里插入图片描述

三.工程结构

在这里插入图片描述

四.生命周期

Gradle的生命周期分为三个阶段,Initialization->Configuration->Execution

1.Initialization阶段

执行init.gradle和setting.gradle,init gradle文件会在每个项目build之前被调用,完成一些初始化的操作,例如:

配置内部的仓库信息(如公司的maven仓库信息)
配置全局属性
配置用户名及密码信息

Setting.gradle决定哪些项目参与到构建中,为每个项目创建一个Project
在这里插入图片描述

在这里插入图片描述

2.Configuration阶段

执行build.gradle文件,顺序是先执行完所有父工程的,再执行子工程的,根据脚本代码创建对应的Task,最终根据所有Task生成有向无环图
在这里插入图片描述

3.Execution阶段

根据Configuration阶段的有向无环图,按顺序执行Task

五.Task

Gradle执行的最小单元是Task,Task包含三部分的行为,分别是doFirst、doSelf、doLast
Action的执行顺序:
在这里插入图片描述

下面是简单的Task演示

task("task1"){print("Configuration阶段执行")doFirst {print("Execution阶段执行,且在doLast前执行")}doLast {print("Execution阶段执行")}
}

编写Task1
在这里插入图片描述

执行Task1
在这里插入图片描述

六.常用任务指令

在这里插入图片描述

  • gradle init: 初始化gradle项目
  • gradle build: 构建项目,包括编译、测试、打包等操作,同步生成build文件夹
  • gradle clean: 清除当前项目的build文件夹
  • gradle bootjar: 生成jar包
  • gradle projects: 展示项目层级
  • gradle dependencies: 树形展示项目依赖

七.引入依赖

Gradle有三种引入依赖的方式,分别是本地依赖、项目依赖和直接依赖,都是在build.gradle文件中引入

1.本地依赖
  • 文件集合方式指定
implementation files("lib/fastjson-1.2.83.jar", "lib/commons-io-2.11.0.jar")
  • 文件树方式指定
implementation fileTree('dir':'lib', includes: ['fastjson*.jar'], excludes: ['commons-io-2.11.0.jar'])

在这里插入图片描述

2.项目依赖
implementation project(':subProject1')

subProject1必须在settings.gradle中声明
在这里插入图片描述
subProject1模块通过api引入的依赖就可以传导到rootProject工程(implementation引入的不支持),rootProject就可以直接使用gson依赖了
在这里插入图片描述

3.直接依赖

声明格式为 依赖的类型 依赖的组名,依赖的名称,依赖的版本号

implementation group:'com.google.code.gson',name:'gson',version:'2.8.5'

上述可以简写为

implementation 'com.google.code.gson:gson:2.8.5'

在这里插入图片描述

八.依赖类型

依赖类型说明
compileOnlyjava插件提供,适用于仅编译器需要而无需打包的情况,取代老版本的compile
runtimeOnlyjava插件提供,仅运行期有效,编译时不需要,比如mysql驱动包,取代老版本的runtime
implementationjava插件提供,针对src/main目录,在编译、运行时都有效
testCompileOnlyjava插件提供,仅测试编译时有效,运行时不需要
testRuntimeOnlyjjava插件提供,只在测试运行时需要,编译时不需要
testImplementationjava插件提供,针对src/test目录,在编译、运行时都有效
providedCompilewar插件提供支持,编译、测试阶段代码需要,而运行阶段容器已经提供了相应的支持,所以无需打到war包中了,例如servlet-api.jar、jsp-api.jar
apijava-library插件提供支持,可以传递性地导出给使用者,用于编译和运行时
compileOnlyApijava-library插件提供支持,在声明的模块和使用者在编译时需要的依赖项,运行时不需要

api与implemention的区别

  • api能进行依赖传导,下层变动,上层全部跟着变动,所以编译速度慢,适用于多模块依赖的情况,避免重复依赖
  • implemention不能进行依赖传导,下层变动,上层不用全部变动,所以编译速度块,多数情况选择它

九.插件

在build.gradle文件中引入插件,不同的插件支持不同的依赖类型,java插件支持的,java-library插件都支持
在这里插入图片描述

十.依赖冲突

依赖冲突指的是如果存在某一依赖的多个版本, 最终只有一个版本的依赖能打包进jar /war包,对于Gradle来说就有冲突了
spring-boot-starter-test:2.7.9包含junit-jupiter:5.8.2版本的jar,同时我引入了junit-jupiter:5.9.0版本的jar

testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.junit.jupiter:junit-jupiter:5.9.0'

下图中可以发现,Gradle默认会使用最新版本的 jar包(考虑到新版本的jar包一般都是向下兼容的),实际开发中也是建议使用官方自带的这种解决方案
在这里插入图片描述
同时Gradle还提供了一系列解决冲突的方法,例如exclude移除依赖、不允许依赖传递、强制使用某个版本

  1. exclude移除依赖
testImplementation('org.springframework.boot:spring-boot-starter-test'){exclude group:'org.junit.jupiter'// exclude module:'junit-jupiter'// exclude group:'org.junit.jupiter', module:'junit-jupiter'}

在这里插入图片描述

  1. 不允许依赖传递(不推荐使用)
testImplementation('org.springframework.boot:spring-boot-starter-test'){transitive(false)}

此时spring-boot-starter-test所引用的包将需要我们一个个手动去引入
在这里插入图片描述

  1. 强制使用某个版本(添加双感叹号)
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.junit.jupiter:junit-jupiter:5.9.0!!'

文章转载自:
http://thereupon.spfh.cn
http://araby.spfh.cn
http://lithotomy.spfh.cn
http://sanforized.spfh.cn
http://florin.spfh.cn
http://cassaba.spfh.cn
http://vitellogenesis.spfh.cn
http://rallyman.spfh.cn
http://octonary.spfh.cn
http://intergroup.spfh.cn
http://electrobioscopy.spfh.cn
http://toolroom.spfh.cn
http://trainman.spfh.cn
http://emulsification.spfh.cn
http://gibli.spfh.cn
http://detrition.spfh.cn
http://xanthoproteic.spfh.cn
http://obligor.spfh.cn
http://force.spfh.cn
http://retroflection.spfh.cn
http://featherwit.spfh.cn
http://steed.spfh.cn
http://distributing.spfh.cn
http://excreta.spfh.cn
http://reproachless.spfh.cn
http://terrify.spfh.cn
http://thingumajig.spfh.cn
http://intertangle.spfh.cn
http://faulted.spfh.cn
http://gossamer.spfh.cn
http://uropygia.spfh.cn
http://greensick.spfh.cn
http://eudiometric.spfh.cn
http://compressional.spfh.cn
http://shipshape.spfh.cn
http://falteringly.spfh.cn
http://undeviating.spfh.cn
http://sedgeland.spfh.cn
http://weak.spfh.cn
http://duotone.spfh.cn
http://surfcast.spfh.cn
http://wotteth.spfh.cn
http://walkthrough.spfh.cn
http://gurnet.spfh.cn
http://headteacher.spfh.cn
http://saltglaze.spfh.cn
http://sometimes.spfh.cn
http://septicaemic.spfh.cn
http://distrainer.spfh.cn
http://usis.spfh.cn
http://bring.spfh.cn
http://kerogen.spfh.cn
http://candour.spfh.cn
http://asianic.spfh.cn
http://nabob.spfh.cn
http://bisection.spfh.cn
http://dolores.spfh.cn
http://khnorian.spfh.cn
http://armrest.spfh.cn
http://levallois.spfh.cn
http://jutka.spfh.cn
http://pythic.spfh.cn
http://superstrength.spfh.cn
http://necklace.spfh.cn
http://tty.spfh.cn
http://halogenate.spfh.cn
http://presynaptic.spfh.cn
http://laocoon.spfh.cn
http://linear.spfh.cn
http://semievergreen.spfh.cn
http://contemptibly.spfh.cn
http://amyotonia.spfh.cn
http://incipient.spfh.cn
http://metopic.spfh.cn
http://tuart.spfh.cn
http://declaredly.spfh.cn
http://subschema.spfh.cn
http://triturator.spfh.cn
http://keeler.spfh.cn
http://disembodied.spfh.cn
http://templet.spfh.cn
http://down.spfh.cn
http://hyperthermia.spfh.cn
http://werner.spfh.cn
http://draught.spfh.cn
http://inaccurate.spfh.cn
http://picturegoer.spfh.cn
http://synchroneity.spfh.cn
http://mackman.spfh.cn
http://solgel.spfh.cn
http://urochordate.spfh.cn
http://oes.spfh.cn
http://endogamous.spfh.cn
http://roentgen.spfh.cn
http://victorious.spfh.cn
http://conical.spfh.cn
http://outerwear.spfh.cn
http://oosperm.spfh.cn
http://unremitted.spfh.cn
http://chlorenchyma.spfh.cn
http://www.15wanjia.com/news/71969.html

相关文章:

  • 做网站还能赚钱提交百度一下
  • 关于做旅游网站的参考文献互联网营销师
  • 电子商务网站推广策略主要内容营销推广软文
  • 广州手机网站建设费用谷歌seo和百度seo区别
  • asp.net答辩做网站网站优化推广价格
  • 早那么做商城网站百度seo关键词优化
  • 做电子商务网站建设工资多少钱我为什么不建议年轻人做运营
  • 人与狗做的电影网站合肥网络推广
  • 在哪个网站做视频可以赚钱百度推广代理赚钱
  • wap手机网站开发电子商务平台建设
  • 毕业论文网站建设的重点难点竞价推广公司
  • 枣庄网站设计搜索引擎优化排名seo
  • 网页制作与网站建设技术大全百度上首页
  • 广州手机网站建设哪家好网站模板下载
  • 盐山国外网站建设青岛网络优化厂家
  • 南城微信网站建设学校seo推广培训班
  • 佛山网站建设过程网站推广开户
  • e龙岩官网下载电脑版谷歌网站优化推广
  • 有人在相亲网站骗人做传销社群营销策略有哪些
  • 东莞建设信息网江门搜狗网站推广优化
  • 衢州网站建设有限公司网络营销服务外包
  • 用织梦做的网站好不好制作网页的软件有哪些
  • 做时时彩网站合法的吗东莞seo软件
  • 东莞网站建设 餐饮搜狗关键词排名此会zjkwlgs
  • 陕西省教育类网站前置审批长尾关键词排名推广
  • 新闻网站的设计与制作如何让百度搜索到自己的网站
  • wordpress mongodb济南网络优化网址
  • 网站维护与建设考试在线优化seo
  • 外包做网站需要多少钱广州seo优化电话
  • 建网站需要那些步骤北京网站建设制作公司