build.gradle模板文件

build.gradle

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'eclipse-wtp'
 
version = '1.0.1-SNAPSHOT'
// Uses JDK 7
sourceCompatibility = 1.7
targetCompatibility = 1.7
 
war {
 baseName = 'myproject'   //项目名称
 version = '1.0.1-SNAPSHOT'
}

repositories {
    mavenLocal()   //使用 mavenLocal() 时,gradle 会查找 Maven 配置文件${user.home}/.m2/settings.xml
    maven { url 'http://maven.oschina.net/content/groups/public/'  }
    mavenCentral()
}

dependencies {
    //compile 'jstl:jstl:1.2'
    //providedCompile 'javax.servlet:javax.servlet-api:3.0.1'
    //compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
    //compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.3.2'
}


gradle几个命令:

gradle cleanEclipse eclipse

gradle eclipse

gradle dependencies


项目中使用 build.gradle

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'eclipse-wtp'
//apply plugin: 'jetty'
apply plugin: 'com.bmuschko.tomcat'
apply plugin: 'com.bmuschko.tomcat-base'
  
version = '1.0.1-SNAPSHOT'
// Uses JDK 7
sourceCompatibility = 1.7
targetCompatibility = 1.7

jar {
    manifest {
        attributes 'Implementation-Title': 'Gradle Quickstart', 'Implementation-Version': version
    }
}

//编译JAVA文件时采用UTF-8
tasks.withType(JavaCompile) {  
    options.encoding = "UTF-8"  
}  

//wab application打包文件
war {
    baseName = 'myproject'   //项目名称
    version = '1.0.1-SNAPSHOT'
}

repositories {
    mavenLocal()   //使用 mavenLocal() 时,gradle 会查找 Maven 配置文件 ${user.home}/.m2/settings.xml
    maven { url 'http://maven.oschina.net/content/groups/public/'  }
    mavenCentral()
}

//设置编码,与之前的options.encoding = "UTF-8" 重复
[compileJava,compileTestJava,javadoc]*.options*.encoding = "UTF-8"


dependencies {
   //将本地多个jar文件作为依赖导入
   compile fileTree(dir:'libs/myprojectLib',include:"*.jar")  
 
   providedCompile 'javax.servlet:javax.servlet-api:3.0.0'
   providedCompile 'javax.servlet.jsp:javax.jsp-api:2.2.0'
   
   //tomcat,详见 https://github.com/bmuschko/gradle-tomcat-plugin
   def tomcatVersion = '7.0.11'
   tomcat "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}",
           "org.apache.tomcat.embed:tomcat-embed-logging-juli:${tomcatVersion}"
   tomcat("org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}") {
        exclude group: 'org.eclipse.jdt.core.compiler', module: 'ecj'
    }
}

test {
    systemProperties 'property': 'value'
}

//Using a setter method, 设置项目编译生成目录
//project.buildDir = 'target'

//Using a getter method,显示项目编译生成目录
println project.buildDir

//执行gradle uploadArchives便可将jar包发布到respos文件夹下
uploadArchives {
    repositories {
        flatDir {
            dirs 'repos'
        }
    }
}

//添加tomcat插件
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.bmuschko:gradle-tomcat-plugin:2.0'
    }
}


gradle依赖jetty版本较低,有些项目报错,也经常出现outofmemory错误,tomcat插件相对稳定一些。

radle-tomcat-plugin插件项目:https://github.com/bmuschko/gradle-tomcat-plugin

在插件运行时,如遇outofmemory,可在执行gradle tomcatRun之前,执行:

set JAVA_OPTS=-XX:MaxPermSize=256m -Xmx512M
gradle clean tomcatRun


设置debug模式,可在执行前输入:

set GRADLE_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=9999,server=y,suspend=n

如果遇到页面jsp编译错误,可能是jar包的绝对路径中包含空格,在环境变量中设置:

set GRADLE_USER_HOME=D:\gradle-user-home

 设置完成后,执行gradle命令,配置文件就会移动到该文件夹中d:\gradle-user-home


gretty插件,在build.gradle中设置

apply plugin: 'war'
apply from: 'https://raw.github.com/akhikhl/gretty/master/pluginScripts/gretty.plugin' 

gretty {
    port = 8080
    contextPath ="/myproject"
    servletContainer = 'tomcat7'
}

   servletContainer参数可选:'jetty7' 、'jetty8'、'jetty9'、'tomcat7'、'tomcat8'

   gradle运行命令为: gradle appRun



你可能感兴趣的:(tomcat,gradle,jetty,OutOfMemory,build.gradle,gretty)