
local repository?boot
- 科技
- 2023-08-14
- 4

很多朋友对于local repository和如何快速上手Spring boot不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!如何使用grad...
很多朋友对于local repository和如何快速上手Spring boot不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
如何使用gradle构建工具打包groovy脚本成jar文件
准备工作安装gradle,groovy。要使用gradle的groovyplugin来打包groovy脚本,项目结构。目录含义src/main/javaJava代码src/main/resourcesJava需要的资源文件src/main/groovyGroovy代码,也可以包含Java代码src/test/javaJava测试代码src/test/resources测试需要的资源文件src/test/groovyGroovy测试需要的资源文件src/sourceSet/javaJava代码源src/sourceSet/resources资源文件源src/sourceSet/groovyGroovy代码源我们只需要编译打包groovy脚本所以只需要创建src/main/groovy目录结构。例子:gradle_groovy_archive项目结构是:gradle_groovy_archive创建helloWorld.groovy脚本,代码如下:
packagehelloprintln'Gradlecompilegroovy'创建Gradle构建文件:
applyplugin:'groovy'applyplugin:'maven'group='com.hello'archiveBaseName='hello'version='0.1-SNAPSHOT'defaultTasks'clean','jar'configurations{deployerJars}repositories{mavenCentral()}dependencies{//使用本地groovy环境groovylocalGroovy()//groovygroup:'org.codehaus.groovy',name:'groovy',version:'1.8.6'compilefileTree(dir:'lib',include:['*.jar'])deployerJars'org.apache.maven.wagon:wagon-webdav-jackrabbit:1.0-beta-7'}sourceSets{main{groovy{srcDir'src/main/groovy'}}}uploadArchives{repositories.mavenDeployer{uniqueVersion=falseconfiguration=configurations.deployerJarsrepository(id:repositoryId,url:repositoryUrl){authentication(userName:'deployment',password:'deployment')proxy()}}}创建构建文件属性文件:
//根据不同情况修改repositoryId=NDrepositoryUrl=NDsystemProp.http.proxyHost=NDsystemProp.http.proxyPort=8080systemProp.http.proxyUser=NDsystemProp.http.proxyPassword=ND在命令行中敲gradle运行,会自动运行defaultTasks,clean和jar,会把所有groovy下的脚本打成jar包。
如何实现tomcat自动化部署
像BAT这样的大公司,都是有一套自动化流水线的,出于公司安全红线要求,我无法讲的太细,但是我可以提供些思路给题主参考。
工具工欲善其事,必先利其器,我们先来说需要哪些工具
1git,用于保存最新要上线的代码
2maven,用于打包项目
3Jenkins,用于触发任务
4sh脚本或者Python脚本,执行Jenkins任务的脚本
流程接下来是实际的流程。
首先,由开发人员把要上线的代码上传到指定代码库。
然后,开发人员触发Jenkins任务。
这个Jenkins的任务是自动化部署的核心,包含以下步骤
1开始对代码进行打包
2把包放到服务器指定文件夹下
插一句,为了安全起见,我们建议的是进行热部署,何为热部署?
热部署需要Nginx+多台Tomcat的配合。
假设目前只有一台Tomcat连接到了Nginx上,那么可以把要更新的代码部署在另一台Tomcat上,然后启动新的Tomcat,确认该服务启动成功,各能力已经启动后,再去修改Nginx的conf文件,把原本给旧Tomcat的请求切到新Tomcat上,这样就实现了热部署。如果不使用这种办法,而是直接在旧的Tomcat上部署新的war包的话,重启Tomcat的过程,就会有几秒停服,这对用户来说是不可接受的。既然说到这里,再介绍两个热部署用到的Nginx的命令。在修改Nginx的conf文件后,要在Nginx的根目录下执行sbin/nginx-t来检查当前conf文件配置是否正确,如果是“successful”的,就可以执行sbin/nginx-sreload来进行实现把新的流量切到新的机器上,即使新的conf文件生效。
好的,关于热部署的部分说完了,我们再说回来。
3将旧的服务器根目录下的war包用cp命令放到一个专门备份的文件夹下
4将新的war包同样用cp命令放到即将启动的Tomcat根目录下的webapps文件夹下,然后解压
5执行shbin/
start.sh
启动新的Tomcat6检查该Tomcat是否启动成功,包括进程存在,tail-f
catalina.out
日志一直在打,api能够调通7修改Nginx的conf文件
8检查Nginx配置文件是否successful
9更新Nginx配置,即sbin/nginx-sreload
10继续观察新Tomcat是否运行正常,如果不正常则立刻切回原Tomcat,本次自动更新失败
11如果正常,则停止旧的Tomcat。
以上,自动化部署完成。
我是苏苏思量,来自BAT的Java开发工程师,每天分享科技类见闻,欢迎关注我,与我共同进步。
如何快速上手Spring boot
推荐以SpringBoot教程与SpringCloud教程的详细开源项目“SpringBoot-Learning”此项目内容为SpringBoot教程程序样例,对于SpringBoot的初学者来说非常有用,文末也列出了Spring相关开源项目,供大家交流学习。
1.SpringBoot-Learning部分样例:
快速入门
chapter1:基本项目构建(可作为工程脚手架),引入web模块,完成一个简单的RESTfulAPI使用Intellij中的SpringInitializr来快速构建SpringBoot/Cloud工程工程配置
chapter2-1-1:配置文件详解:自定义属性、随机数、多环境配置等Web开发
chapter3-1-1:构建一个较为复杂的RESTfulAPI以及单元测试chapter3-1-2:使用Thymeleaf模板引擎渲染web视图chapter3-1-3:使用Freemarker模板引擎渲染web视图chapter3-1-4:使用Velocity模板引擎渲染web视图chapter3-1-5:使用Swagger2构建RESTfulAPIchapter3-1-6:统一异常处理数据访问、日志管理等等,项目地址:程序猿DD/SpringBoot-Learning-码云Gitee.com
2.项目名称:springboot实践学习案例springboot-learning-example
项目结构:
a.『基础-入门篇』
springboot-helloworld《SpringBoot之HelloWorld详解》springboot-properties《SpringBoot之配置文件详解》b.『基础-Web业务开发篇』
springboot-restful《Springboot实现Restful服务,基于HTTP/JSON传输》《SpringBoot之RESRfulAPI权限控制》springboot-freemarker《SpringBoot集成FreeMarker详解案例》springboot-validation-over-json《SpringBootHTTPoverJSON的错误码异常处理》c.『基础–数据存储篇』
springboot-mybatis《Springboot整合Mybatis的完整Web案例》springboot-mybatis-annotation《SpringBoot整合MybatisAnnotation注解的完整Web案例》springboot-mybatis-mutil-datasource《SpringBoot整合Mybatis实现Druid多数据源详解》d.『基础–数据缓存篇』
springboot-mybatis-redis《SpringBoot整合Redis实现缓存操作》springboot-mybatis-redis-annotation《SpringBoot注解实现整合Redis作为缓存》e.『其他篇』
springboot-elasticsearch《SpringBoot整合Elasticsearch,实现functionscorequery权重分查询》springboot-dubbo-serverspringboot-dubbo-clientDubbo服务提供者工程和Dubbo服务消费者工程《Springboot整合Dubbo/ZooKeeper详解SOA案例》《SpringBoot中如何使用DubboActivate扩展点》SpringDataES篇
spring-data-elasticsearch-crud《SpringDataElasticsearch-基本案例》spring-data-elasticsearch-queryspring-data-elasticsearch-实战案例详解项目地址:泥沙砖瓦浆木匠/springboot-learning-example-码云Gitee.com
Spring相关项目推荐:
1.项目名称:基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构
项目内容:基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构,提供整套公共微服务服务模块:集中权限管理(单点登录)、内容管理、支付中心、用户管理(支持第三方登录)、微信平台、存储系统、配置中心、日志分析、任务和通知等,支持服务治理、监控和追踪,努力为中小型企业打造全方位J2EE企业级开发解决方案。
项目地址:shuzheng/zheng-码云Gitee.com
2.项目名称:模块化开发系统ybg-spring-fast
项目简介:以SpringBoot为中心,模块化开发系统,用户可以随意删减除权限框架外任意的系统模块。复用,组装性强主要应用技术:springSecurity+Ehcache+quartz+swagger2+Mysql5.6+springjdbc+druid+springsocial+springsession+layerui+vue.js等。
项目地址:YYDeament/ybg-spring-fast-码云Gitee.com
3.项目名称:JAVA分布式快速开发平台iBase4J
项目内容:JAVA分布式快速开发平台:SpringBoot,SpringMVC,Mybatis,mybatis-plus,motan/dubbo分布式,Redis缓存,Shiro权限管理,Spring-Session单点登录,Quartz分布式集群调度,Restful服务,QQ/微信登录,Apptoken登录,微信/支付宝支付;日期转换、数据类型转换、序列化、汉字转拼音、身份证号码验证、数字转人民币、发送短信、发送邮件、加密解密、图片处理、excel导入导出、FTP/SFTP/fastDFS上传下载、二维码、XML读写、高精度计算、系统配置工具类等等。
项目地址:iBase4J/iBase4J-码云Gitee.com
4.项目名称:JavaEE(J2EE)快速开发框架ThinkGem
项目内容:JavaEE(J2EE)快速开发框架,基于经典技术组合(SpringMVC、ApacheShiro、MyBatis、BootstrapUI),包括核心模块如:组织机构、角色用户、权限授权、数据权限、内容管理、工作流等。虽说很长时间没有大的更新了,但它的架构精良易于扩展深受大家喜爱,依然是中小企业的首选,它的功能设计、底层架构也非常具有参考意义、是学习入门的首选。关注我ThinkGem开源中国博客了解4.0最新动态。
项目地址:ThinkGem/JeeSite-码云Gitee.com
5.项目名称:Java快速开发平台MCMS
项目内容:完整开源,Java快速开发平台。基于Spring、SpringMVC、Mybatis架构,MStore提供更多好用的插件与模板(文章、商城、微信、论坛、会员、评论、支付、积分、工作流、任务调度等,同时提供上百套免费模板任意选择),价值源自分享!铭飞系统不仅一套简单好用的开源系统、更是一整套优质的开源生态内容体系。
项目地址:铭飞/MCMS-Gitee
6.项目名称:基于SpringCloud微服务化开发平台AG-Admin
项目内容:AG-Admin是国内首个基于SpringCloud微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用Eureka、Fegin、Ribbon、Zuul、Hystrix、JWTToken、Mybatis等主要框架和中间件,前端采用vue-element-admin组件。
项目地址:老A/AG-Admin-码云Gitee.com
7.项目名称:轻量级的SpringBoot快速开发平台renren-fast
项目简介:renren-fast是一个轻量级的SpringBoot快速开发平台,其设计目标是开发迅速、学习简单、轻量级、易扩展;使用SpringBoot、Shiro、MyBatis、Redis、Bootstrap、Vue2.x等框架,包含:管理员列表、角色管理、菜单管理、定时任务、参数管理、代码生成器、日志管理、云存储、API模块(APP接口开发利器)、前后端分离等。
文章分享结束,local repository和如何快速上手Spring boot的答案你都知道了吗?欢迎再次光临本站哦!
本文链接:http://www.depponpd.com/ke/3167.html