為Gradle添加tomcat插件,調試WEB應用


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測試我們的應用了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM