1.build.gradle

ext {
profile = "dev"
tag='web'
if (project.hasProperty('pro')) { temp = project.property('pro')
profile= temp.split('_')[0]
tag= temp.split('_')[1]
}
tag=tag+".gradle" proConfig= loadGroovyConfig() println profile+":"+ tag
} apply from :tag def loadGroovyConfig() {
def configFile = file('config.groovy')
new ConfigSlurper(profile).parse(configFile.toURL()).toProperties()
} //gradle publishToMavenLocal -Ppro=test_external 2.web.gradle

apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'war'
apply plugin: 'jetty'
apply plugin: 'idea' group = 'com.infosky.icustoms'
version = '1.0' description = """""" sourceCompatibility = 1.6
targetCompatibility = 1.6 [compileJava, javadoc, compileTestJava]*.options*.encoding = 'UTF-8' tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
} configurations {
mycompile
myprovided
myonlycompile
}
sourceSets{
main{
if(project.profile=='dev') {
compileClasspath += configurations.mycompile
compileClasspath += configurations.myprovided
compileClasspath += configurations.myonlycompile runtimeClasspath += configurations.mycompile
runtimeClasspath += configurations.myprovided
}else{
compileClasspath += configurations.mycompile
compileClasspath += configurations.myprovided
compileClasspath += configurations.myonlycompile runtimeClasspath += configurations.mycompile
}
}
} repositories {
mavenLocal()
maven { url "http://172.21.129.57:8081/nexus/content/groups/public/" }
maven { url "http://repo.maven.apache.org/maven2" }
}
dependencies { mycompile group: 'com.infosky.icustoms', name: 'icustoms-sso-client', version:'1.0', transitive: false myonlycompile group: 'junit', name: 'junit', version:'3.8.1' myprovided group: 'ccsplib.infosky', name: 'antlr-2.7.7', version:'1.1.1' } def loadGroovyConfig() {
def configFile = file('config.groovy')
new ConfigSlurper(profile).parse(configFile.toURL()).toProperties()
}
processResources {
from ('src/main/java') {
include '**/*.sql'
include '**/*.xml'
include '**/*.ftl'
include '**/*.properties'
} println "begin replace profile!"
from(sourceSets.main.resources.srcDirs) {
filter(org.apache.tools.ant.filters.ReplaceTokens,
tokens: project.proConfig
)
} println ant.getProperties()
// ant.copy(file: 'src/command.bar', tofile: 'dist/command.bat', encoding: 'sjis') {
// filterchain {
// replaceTokens {
// token(key: 'jarPath', value=jar.archivePath.name)
// }
// }
// } println "end replace profile!" } idea {
module {
scopes.PROVIDED.plus += [configurations.myprovided,configurations.mycompile,configurations.myonlycompile]
}
} 3.client.gradle
ext {
libName = 'icustoms-sso-client'
}
apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'maven-publish' group = 'com.infosky.icustoms'
version = '1.0' description = """sso""" sourceCompatibility = 1.6
targetCompatibility = 1.6 tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
} configurations {
mycompile
myprovided
}
sourceSets{
main{
resources {
// srcDirs=[ 'SourceCode/resources']
exclude '**'
}
java{
include 'sso/common/**/*.*'
include 'sso/client/**/*.*'
include 'sso/constants/*.*' include 'sso/ticket/**/*.*'
} if(project.profile=='dev') {
compileClasspath += configurations.mycompile
compileClasspath += configurations.myprovided runtimeClasspath += configurations.mycompile
runtimeClasspath += configurations.myprovided
}else{
compileClasspath += configurations.mycompile
compileClasspath += configurations.myprovided runtimeClasspath += configurations.mycompile
}
}
} repositories {
mavenLocal()
maven { url "http://172.21.129.57:8081/nexus/content/groups/public/" }
maven { url "http://repo.maven.apache.org/maven2" }
}
dependencies {
mycompile group: 'ccsplib.infosky', name: 'framework-core-bin', version:'1.1.1' } processResources {
from ('src/main/java') {
// include '**/*.sql'
// include '**/*.xml'
// include '**/*.ftl'
// include '**/*.properties'
// include '**/*.vm'
exclude '**/*.java'
} println "begin replace profile!"
from(sourceSets.main.resources.srcDirs) {
filter(org.apache.tools.ant.filters.ReplaceTokens,
tokens: project.proConfig
)
}
println "end replace profile!" } jar {
baseName libName
from sourceSets.main.output include 'sso/common/**/*.*'
include 'sso/client/**/*.*'
include 'sso/constants/*.*'
include 'sso/config/*.*'
include 'sso/utils/*.*'
include 'sso/holder/*.*'
include 'sso/user/**/*.*'
include 'sso/bean/**/*.*'
} task sourceJar(type: Jar) {
from sourceSets.main.allJava include 'sso/common/**/*.*'
include 'sso/client/**/*.*'
include 'sso/constants/*.*'
include 'sso/config/*.*'
include 'sso/utils/*.*'
include 'sso/holder/*.*'
include 'sso/user/**/*.*'
include 'sso/bean/**/*.*'
} publishing {
publications {
mavenJava(MavenPublication) {
groupId group
artifactId libName
version version from components.java artifact sourceJar {
classifier "sources"
}
}
}
}

常用gradle命令的更多相关文章

  1. Gradle命令行黑魔法

    毫无疑问,现在Gradle已经成为java世界最火的构建工具,风头已经盖过了冗余的ant,落后的maven.Gradle是以Groovy语言编写的一套构建脚本的DSL,由于Groovy语法的优雅,所以 ...

  2. Android Studio系列教程五--Gradle命令详解与导入第三方包

    Android Studio系列教程五--Gradle命令详解与导入第三方包 2015 年 01 月 05 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://s ...

  3. Gradle命令详解与导入第三方包

    Android Studio + Gradle的组合用起来非常方便,很多第三方开源项目也早都迁移到了Studio,为此今天就来介绍下查看.编译并导入第三方开源项目的方法. Sublime + Term ...

  4. Gradle 命令之 --stacktrace , --info , --debug 用法

    FAQ: Android studio 出现错误Run with --stacktrace option to get the stack trace. Run with --info or --de ...

  5. Gradle命令详解与导入第三方包--快速打包

    快速打包app:gradlew assembleRelease --console plain (好使) 下边的方法暂时不好使,可以用的兄弟请教下哈! Android Studio + Gradle的 ...

  6. gradle命令学习

    概述 命令学习比较枯燥,全部是例子~ gradle版本 假设你的本地gradle已经安装配置完成.没有安装配置的,可以参考 gradle安装 C:\Users\yueling.DANGDANG> ...

  7. android studio学习----gradle命令详解

    首先来给大家介绍一种简便并且个人最喜欢的一种办法.很多时候我们在GitHub上看到一个不错的开源项目,一般有两种需求,阅读源码和查看运行效果,如果是单纯的查看源码我更喜欢用一些轻量级编辑器,如vim, ...

  8. 常用 Git 命令清单

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  9. 常用Linux命令收集

    关闭 php-fpm: ps -ef | grep php-fpm  或    ps aux | grep php-fpm kill -USR2 32253  (对应的进程PID) kill -9 进 ...

随机推荐

  1. 前端神器 Firebug 2.0 新特性一览

    如果你从事Web前端方面的开发工作,那么对Firebug一定不会陌生,这是Firefox浏览器的一款插件,集HTML查看和编辑.Javascript控制台.网络状况监视器于一体,给Web开发者带来了极 ...

  2. C# (GDI+相关) 图像处理(各种旋转、改变大小、柔化、锐化、雾化、底片、浮雕、黑白、滤镜效果) (转)

    C#图像处理   (各种旋转.改变大小.柔化.锐化.雾化.底片.浮雕.黑白.滤镜效果)     一.各种旋转.改变大小   注意:先要添加画图相关的using引用.   //向右旋转图像90°代码如下 ...

  3. boost::asio 使用实例

    #include <iostream> #include <boost/asio.hpp> using namespace std; using namespace boost ...

  4. C# 正则表达式及常用正则表达式

    元字符 描述 .点 匹配任何单个字符.例如正则表达式r.t匹配这些字符串:rat.rut.r t,但是不匹配root. $ 匹配行结束符.例如正则表达式weasel$ 能够匹配字符串"He' ...

  5. view上添加点手势 button无法响应点击事件

    在view 上添加手势 有的时候  会把Button的 点击事件盖掉,这个 时候 我们用UITapGestureRecognizer的代理方法 //手势的代理方法 - (BOOL)gestureRec ...

  6. Windows 7/8/8.1 硬盘安装法实现 ubuntu 14.04 双系统

    一.软件准备 1. 下载 Ubuntu 系统镜像:http://www.ubuntu.com/download/desktop/ : 这里使用的是 ubuntu 14.04.1 LTS 64bit 版 ...

  7. VBA添加表格

    Sub 添加表格() ' If MsgBox("要为所有表格添加列吗?", vbYesNo + vbQuestion) = vbYes Then To ActiveDocument ...

  8. Dockpanel的控件加载问题

    1. 正确加载模式:panel.ControlContainer.Controls.Add(control); 如果用panel.Controls.Add(control);则可能出现模块发生位移问题 ...

  9. Vue.js学习 Item7 -- 条件渲染与列表渲染

    v-if 在字符串模板中,如 Handlebars,我们得像这样写一个条件块: <!-- Handlebars 模板 --> {{#if ok}} <h1>Yes</h1 ...

  10. centos6.7下编译安装lamp环境

    编译C源代码: 前提:提供开发工具及开发环境 通过“包组”提供开发组件,CentOS 6: "Development Tools", "Server Platform D ...