gradle java web项目_使用Gradle构建构建一个Java Web工程及持续集成环境Jenkins配置

安装Eclipse插件——Buildship

什么是Buildship?

Buildship能方便我们通过Eclipse IDE创建和导入Gradle工程,同时还能执行Gradle任务。

Eclipse上安装Buildship

建议直接去Eclipse market处下载,简单方便,如下图:

7957a8b2e8e1943c9e16e5d44064dfe0.png

Buildship的更多信息

请参考以下链接,有教程,比较简单,

主要内容:

如何导入Gradle工程,

如何创建Gradle工程,

如何执行Gradle任务,

等。。。

安装Eclipse插件——Minimalist Gradle Editor【可选】

主要作用是方便编辑gradle文件,提供语法高亮功能,另外该插件也非常精简,大小小于50k。

高亮效果及安装方式如下图:

1604d3f394c30c34d42b92b56b058f49.png

Gradle安装

官网下载Gradle安装包,如下链接

我下载的是gradle-2.14.1-bin.zip包,下载后解压到硬盘路径即可,想配环境变量的可以配置下,既然打算用Eclipse集成Buildship了,我也就懒得配置了。

Eclipse上创建Gradle工程

这个我稍微翻译一下,最好直接参考官方文档:

1、通过File ▸ New ▸ Other…​ 菜单入口找到创建Gradle Project选项,如下图:

6de2906eb460dc6ef385f38f13f71f66.png

点击下一步,输入工程名字,工程位置,以及所属的工作集(可选,用于工程分组),

b3dca9d5ca0cc34fa65c946aeb1b8d13.png

点击下一步,如下图所示,这里我们选择自己的Gradle本地安装路径,如下图:

75f0e5f9ff122006883fb63b17bc3dac.png

在以上步骤中,点击完成按钮,会触发gradle init --type java-library命令的执行,并导入该工程到Eclipse IDE中;

点击下一步可预览即将创建的Gradle工程,如下图,

ed133661cf81c263fb44de0adc6d0349.png

创建好的工程

191e1ef2173d249281eaf08788902521.png

Eclipse上导入Gradle工程

很简单,跟平常工程的导入类似,只不过工程类型选择导入Gradle Project而已,可参考以下链接:

已有工程转为Gradle工程

工程右键,配置->Add Gradle Nature即可,如果没有Gradle相关的文件,可以执行gradle init命令生成:

7a3d3bf9fb440b98834325a4d987f079.png

创建一个Gradle Web工程及相关配置

首先,Eclipse上创建一个Dynamic Web project,然后将其转成Gradle工程,可参考前面的步骤;

然后,改造下工程目录,如下图,跟maven的目录一样,另外把resources目录添加到构建路径下,

62a2a9f8d3de08b63c07786e1748bd5e.png

7bc0c88156daa824f0babf2502148867.png

最后主要就是build.gradle文件的配置了

我这边主要用了三个插件,配置如下,

war用于打包,

org.akhikhl.gretty提供jetty、tomcat等容器的支持,

org.hidetake.ssh提供远程服务器登陆,文件传输,命令执行等支持,

相关插件官方文档都比较完善。

buildscript{

repositories {

mavenLocal()

jcenter()

maven{ url'http://maven.d.com/content/groups/public/'}

mavenCentral()

}

dependencies {

classpath'org.hidetake:gradle-ssh-plugin:2.6.0'classpath'org.akhikhl.gretty:gretty:+'}

}

apply plugin:'war'apply plugin:'org.akhikhl.gretty'apply plugin:'org.hidetake.ssh'gretty {

servletContainer= 'tomcat7'contextPath= '/dss'

//httpPort = 8080fastReload=false

recompileOnSourceChange=false

reloadOnClassChange=false

reloadOnConfigChange=false

reloadOnLibChange=false

enableNaming=true

}

ssh.settings {

knownHosts = allowAnyHosts

}

remotes {

deployServer {

host = 'XX.XX.XX.XX'

user = 'XXXX'

password = 'XXXXXX'

}

}

另外可以配下工程信息:

group 'com.cetiti.epdc'

def artifactid = "dss"

//version '0.1.0-SNAPSHOT'description= """Gradle WebApp of dss"""

buildDir = 'target

依赖查找仓库:

repositories {// Use 'jcenter' forresolving your dependencies.// You can declare any Maven/Ivy/file repository here.

mavenLocal()

jcenter()

maven{ url'http://maven.d.com/content/groups/public/'}

mavenCentral()

}

依赖配置:

dependencies {//The production code uses the SLF4J logging API at compile time

compile"org.slf4j:slf4j-api:1.7.21"

//compile "org.slf4j:slf4j-log4j12:1.7.21"compile"log4j:log4j:1.2.17"compile"com.google.code.gson:gson:2.6.2"compile"org.apache.commons:commons-lang3:3.4"compile"org.springframework:spring-context:3.2.16.RELEASE"compile"org.springframework:spring-web:3.2.16.RELEASE"compile"org.springframework:spring-webmvc:3.2.16.RELEASE"compile"org.springframework:spring-tx:3.2.16.RELEASE"compile"org.springframework:spring-context-support:3.2.16.RELEASE"compile"org.springframework:spring-jdbc:3.2.16.RELEASE"compile"org.aspectj:aspectjweaver:1.8.7"compile"com.alibaba:druid:1.0.15"compile"ojdbc:ojdbc:6"compile"org.mybatis:mybatis:3.2.8"compile"org.mybatis:mybatis-spring:1.2.5"compile"org.jasig.cas.client:cas-client-core:3.4.1"compile"com.cetiti.common:cetiti-common:0.1.0"compile"org.quartz-scheduler:quartz:1.8.6"compile'javax.servlet:servlet-api:2.5'

// Declare the dependency for your favourite test framework you want to use inyour tests.// TestNG isalso supported by the Gradle Test task. Just change the// testCompile dependency to testCompile 'org.testng:testng:6.8.1' andadd// 'test.useTestNG()'to your build script.

testCompile'junit:junit:4.12'}

添加自定义任务,我这里简单的写了四个任务,主要做以下几件事,关闭tomcat、删除war包及目录、拷贝文件、启动tomcat:

task shutdownTomcat() <

ssh.run {

session(remotes.deployServer) {

println'shut down tomcat...'executeScript'''#!/bin/sh

cd /usr/local/dss-tomcat-7.0.47/bin

./shutdown.sh'''}

}

}

taskdel(dependsOn:shutdownTomcat) <

ssh.run {

session(remotes.deployServer) {

println'start deleting...'executeScript'''#!/bin/sh

rm -rf /usr/local/dss-tomcat-7.0.47/webapps/dss

rm -f /usr/local/dss-tomcat-7.0.47/webapps/dss.war'''}

}

}

task copy(dependsOn:del) <

ssh.run {

session(remotes.deployServer) {

println'start copying war...'putfrom: buildDir.toString() + '/libs/dss.war', into: '/usr/local/dss-tomcat-7.0.47/webapps'}

}

}

task deploy(dependsOn:copy)<

ssh.run {

session(remotes.deployServer) {

println'start tomcat...'execute'/usr/local/dss-tomcat-7.0.47/bin/startup.sh'}

}

}

执行Gradle任务

执行Gradle Task视图里的任务:

Eclipse IDE上打开Gradle Task视图,不知道为什么,我这边添加了相关插件之后,任务列表不会马上显示,需要重启Eclipse,可能是Buildship的Bug。

5f79d7c42de426c8b010b23f5f83c3dd.png

执行自定义任务:

工程右键,run as,打开运行配置,输入命令即可

8a304bb7d842b59bdd246ea4582f5f32.png

持续集成环境Jenkins配置

首先要安装jenkins的gradle插件,我这里假设已经安装好了,不知道怎么安装的参考网络,

1、选择构建一个自由风格的软件项目

2、配置,很简单,见图:

25685e2e67f15357654651754d310fb1.png

2f4dc8289641994110cfea2faf40ea3e.png

789babae97cfbfc7b4bae34dfe2d9bab.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!对于使用Jenkins进行Java项目的持续构建和部署,以下是一些基本的步骤和配置: 1. 安装Jenkins:首先,您需要安装Jenkins并确保其成功运行。可以从Jenkins官方网站下载安装程序并按照指示进行安装。 2. 配置Java环境:在Jenkins服务器上,确保已经正确安装和配置Java开发环境。您可以通过在终端或命令提示符中运行`java -version`来验证Java环境是否正确设置。 3. 创建一个新的Jenkins Job:登录到Jenkins管理界面,点击"New Item"创建一个新的任务。选择"Freestyle project"作为项目类型。 4. 配置源代码管理:在"配置"页面的"源代码管理"部分,选择您的代码托管平台(如Git或SVN),并提供您的项目的代码仓库URL和凭据信息。 5. 配置构建触发器:在"配置"页面的"构建触发器"部分,选择适当的触发器。例如,可以选择定期构建,或者在代码提交时触发构建。 6. 配置构建步骤:在"配置"页面的"构建"部分,添加构建步骤以构建和部署您的Spring Boot项目。以下是一些常见的步骤: - 使用Maven或Gradle构建项目:使用Maven或Gradle构建您的项目。您可以在"构建"部分的"添加构建步骤"中选择适当的构建工具,并提供构建命令或任务。 - 打包可执行JAR文件:使用Maven或Gradle将项目打包为可执行的JAR文件。 - 部署项目:使用适当的部署工具(例如Docker、Tomcat等)将打包的JAR文件部署到目标环境。 7. 保存并触发构建:保存Jenkins任务配置,并手动触发第一次构建以验证配置是否正确。您可以单击任务页面的"立即构建"按钮来手动触发构建。 这些是基本的步骤和配置,您可以根据您的项目需求进行相应的调整和扩展。希望对您有所帮助!如果您有任何进一步的问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值