Gradle提供了不输于maven的依赖管理

提供了强大的test功能,输出优美的测试报告

并且提供war插件,使用内置的jetty调试WEB应用

因为博主偏偏钟情于tomcat,所以希望使用tomcat来调试WEB应用

下面我们来通过些许的代码,将tomcat插件配置到项目中

实现一键调试部署WEB应用

build.gradle文件:

buildscript {
repositories {
jcenter()
}
dependencies {
classpath "com.bmuschko:gradle-tomcat-plugin:2.2.3"

}
}

apply plugin: "java"
apply plugin: "war"
apply plugin: "eclipse"
apply plugin: "com.bmuschko.tomcat"
sourceCompatibility = 1.8
version = "0.0.1-SNAPSHOT"
war.baseName = "jblog"
project.webAppDirName = "src/main/webapp" //扩展属性放在ext的内部类中
ext{
hibernate_version="4.3.9.Final"
spring_version="4.2.3.RELEASE"
} configurations {
provided
} sourceSets {
main{
resources.srcDirs = ["src/main/java"] //引入资源文件,打包时才会将配置文件植入war文件
}
main.compileClasspath += configurations.provided
test.compileClasspath += configurations.provided
test.runtimeClasspath += configurations.provided
} repositories {
mavenLocal()
maven {url "http://maven.oschina.net/content/groups/public/"}
mavenCentral()
jcenter()
} dependencies {
compile(
"org.hibernate:hibernate-core:${hibernate_version}",
"org.hibernate:hibernate-ehcache:${hibernate_version}",
"org.springframework:spring-core:${spring_version}",
"org.springframework:spring-beans:${spring_version}",
"org.springframework:spring-context:${spring_version}",
"org.springframework:spring-tx:${spring_version}",
"org.springframework:spring-web:${spring_version}",
"net.sf.ehcache:ehcache:2.9.0",
"mysql:mysql-connector-java:5.1.37",
"log4j:log4j:1.2.17"
) testCompile "junit:junit:4.7"
provided "javax.servlet:javax.servlet-api:4.+" def tomcatVersion = '8.0.27'
tomcat "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}",
"org.apache.tomcat.embed:tomcat-embed-logging-juli:${tomcatVersion}",
"org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}"

} //注意下面这个配置,新版本gradle如果不使用数组添加的话会导致eclipse频繁报错
eclipse.classpath.plusConfigurations += [configurations.provided]
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
} tomcatRun.contextPath = '/jblog'
tomcatRunWar.contextPath = '/jblog'

上面所有蓝色字体就是所有需要配置的代码

默认端口8080,执行tomcatRun命令后会提示:

The Server is running at http://localhost:8080/jblog

这时候访问http://localhost:8080/jblog就可以访问你的应用进行调试了

因为tomcat的gradle插件是超轻量级的,不带有任何附加的功能,所以访问http://localhost:8080是看不到任何tomcat欢迎界面的

这样看来也就是仅仅调试WEB应用了,与使用内置jetty调试貌似也没多大区别,呵呵

相关截图发一下,我很讨厌那种只发文字不发图片的blog,往往搞得人一头雾水,忙中添乱

项目结构

执行gradle命令

输入build tomcatRun命令(注意大小写),点击Run执行

终端输出如上图所示,这时候就可以访问URL测试我们的应用了。

为Gradle添加tomcat插件,调试WEB应用的更多相关文章

  1. 购物商城学习--第三讲(tomcat插件启动web工程)

    此处提到的tomcat插件即maven工程集成的tomcat插件,可以在添加maven的tomcat插件之后,在本地通过脚本或者命令行方式运行web工程,tomcat插件启动只需要修改一个端口即可,非 ...

  2. (转)淘淘商城系列——使用maven tomcat插件启动web工程

    http://blog.csdn.net/yerenyuan_pku/article/details/72672138 上文我们一起学习了怎样搭建maven工程,这篇文章我就来教大家一起学习怎样用to ...

  3. myeclipse maven tomcat插件 创建web工程

    自从有了云笔记,很久不写博客了.今天写了使用Freemarker静态化JSP页面,索性就发出来.初学,勿喷. 这篇文字以前放在云笔记里,当然里面有很多借鉴网络上的东西,而自己也使用Maven很久了,索 ...

  4. Maven添加Tomcat插件实现热部署

    Maven热部署,顾名思义就是可以不影响项目在服务器中的运行情况,可以实现项目代码的更新,减少启动,编译时间,达到快速开发的目的,也不需要手动拷贝war包到远程项目,可以直接将项目以及war包部署到远 ...

  5. Maven 添加 Tomcat 插件

    若想在 Maven 中使用 Tomcat 服务器,需要在 pom.xml 文件中的 <build></build> 标签中添加以下代码 <!-- Maven项目编译插件 ...

  6. eclipse中如何添加tomcat插件

    本篇简短的介绍了如何安装tomcat插件,因为不eclipse中不安装插件就没有tomcat图标,也就无法正常关闭服务器而只能terminate.废话不多说,直接进入主题: 1.首先下载一个tomca ...

  7. Mac下Eclipse(Oxygen)添加Tomcat插件

    1 查看本机Tomcat版本 ~$ sh /Library/Tomcat/bin/catalina.sh version SiegdeMacBook-Pro:bin Sieg$ sh /Library ...

  8. 为eclipse添加tomcat插件(eclipse tomcat plugin)

    打开站点:http://marketplace.eclipse.org/content/eclipse-tomcat-plugin 把Install拖到打开的eclipse的工作区中,即可下载安装. ...

  9. 如何通过Maven的Tomcat插件运行Web工程

    去tomcat官网http://tomcat.apache.org/,左侧栏Apache Tomcat下的Maven Plugin,点进去选择最新版本Version 2.2 通过介绍可知,使用tomc ...

随机推荐

  1. NET 查找程序集路径(CLR关于Assembly的搜索路径的过程)

    最近在回顾.Net应用程序的执行环境,这里做一个很小的总结,方面以后需要的时候进行查找: CLR必须可以找到正确的Assembly,Net提供了Assembly搜索算法,可以根据.config文件(类 ...

  2. 用于主题检测的临时日志(b42e98ba-eb4f-4099-a54c-7aee3f29c3dd - 3bfe001a-32de-4114-a6b4-4005b770f6d7)

    这是一个未删除的临时日志.请手动删除它.(184c28c9-c88e-48fe-9713-6891e2d15044 - 3bfe001a-32de-4114-a6b4-4005b770f6d7)

  3. CentOS 6下安装nginx

    原文:http://yubosun.akhtm.com/tech/centos-nginx.htm 1 在nginx官方网站下载一个rpm包,下载地址是:http://nginx.org/en/dow ...

  4. Selenium获取input输入框中值的三种方法

    第一种用jQuery的val方法: js = "return $('input').val();" driver.execute_script(js) 第二种用jQuery的att ...

  5. ZOJ3229 Shoot the Bullet(有源汇的上下界最大流)

    #pragma warning(disable:4996) #include <iostream> #include <cstring> #include <string ...

  6. POJ 2014

    #include <iostream> using namespace std; int main() { //freopen("acm.acm","r&qu ...

  7. Difference Between Vector and Deque in C++

    1) Dequeue can quickly insert or delete both at the front or the end. However, vector can only quick ...

  8. QQ群共享文件下载很慢解决办法

    QQ群共享文件下载很慢解决办法.我们经常会不群里面共享文件,文件文件稍大,下载非常慢.家庭是20M的网速,一般正常下载能够达到2.5MB左右,而在QQ群实际下载网速却只有80KB左右.如果要下1G,就 ...

  9. Minifilter微过滤框架:框架介绍以及驱动层和应用层的通讯

    minifilter是sfilter后微软推出的过滤驱动框架.相比于sfilter,他更容易使用,需要程序员做的编码更简洁. 系统为minifilter专门制作了一个过滤管理器,这个管理器本身其实是一 ...

  10. VC高手们的博客

    http://www.cnblogs.com/killmyday/tag/Debug/ (关于符号调试等内容比较多)