常用gradle命令
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命令的更多相关文章
- Gradle命令行黑魔法
毫无疑问,现在Gradle已经成为java世界最火的构建工具,风头已经盖过了冗余的ant,落后的maven.Gradle是以Groovy语言编写的一套构建脚本的DSL,由于Groovy语法的优雅,所以 ...
- Android Studio系列教程五--Gradle命令详解与导入第三方包
Android Studio系列教程五--Gradle命令详解与导入第三方包 2015 年 01 月 05 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://s ...
- Gradle命令详解与导入第三方包
Android Studio + Gradle的组合用起来非常方便,很多第三方开源项目也早都迁移到了Studio,为此今天就来介绍下查看.编译并导入第三方开源项目的方法. Sublime + Term ...
- Gradle 命令之 --stacktrace , --info , --debug 用法
FAQ: Android studio 出现错误Run with --stacktrace option to get the stack trace. Run with --info or --de ...
- Gradle命令详解与导入第三方包--快速打包
快速打包app:gradlew assembleRelease --console plain (好使) 下边的方法暂时不好使,可以用的兄弟请教下哈! Android Studio + Gradle的 ...
- gradle命令学习
概述 命令学习比较枯燥,全部是例子~ gradle版本 假设你的本地gradle已经安装配置完成.没有安装配置的,可以参考 gradle安装 C:\Users\yueling.DANGDANG> ...
- android studio学习----gradle命令详解
首先来给大家介绍一种简便并且个人最喜欢的一种办法.很多时候我们在GitHub上看到一个不错的开源项目,一般有两种需求,阅读源码和查看运行效果,如果是单纯的查看源码我更喜欢用一些轻量级编辑器,如vim, ...
- 常用 Git 命令清单
我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...
- 常用Linux命令收集
关闭 php-fpm: ps -ef | grep php-fpm 或 ps aux | grep php-fpm kill -USR2 32253 (对应的进程PID) kill -9 进 ...
随机推荐
- Asp.Net获取IP的方法
服务端: //方法一 HttpContext.Current.Request.UserHostAddress; //方法二 HttpContext.Current.Request.ServerVari ...
- Mac 平台下功能强大的Shimo软件使用指南
年初自从换了MAC工作站后,彻底享受了Apple产品给我们带来的完美体验,可能是刚转过来不适应,在访问网络设备时觉得远程连接不方便,例如ssh,vpn登陆都不是很方便,后来又安装了openvpnfor ...
- C#委托零基础理解
C#委托零基础理解(转) 1, 为什么使用委托 2.什么是委托 3.委托如何使用 为什么使用委托? 委托是c#中非常重要的一个概念,使用委托使程序员可以将方法引用封装在委托对象内.然后可以将该委 ...
- c# 字符串(含有汉字)转化为16进制编码(转)
public static string Str2Hex(string s) { string result = string.Empty; byte[] arrByte = System.Text. ...
- (笔记)angular material 选项卡用法
- 必须会的SQL语句(三)插入
1.规范一些使用插入语句的小规范 1)中文字符串前 最好 加一个N 2)列名用中括号 扩起来 像这样 [列名] 2.常规写法 Insert into tableName ( [col ...
- Elasticsearch的PHP的API使用(一)
前提:在服务器上安装Elasticsearch (host:192.168.1.10) http://192.168.1.10:9200?_search?pretty 1:安装PHP的Elast ...
- activiti搭建(四)八项服务介绍
转载请注明源地址:http://www.cnblogs.com/lighten/p/5927949.html 1.前言 之前学习的时候一直在其它文章看到activiti提供了七个接口来操作工作流,但在 ...
- Spring Richclient — 企业级富客户端开发框架介绍,第 1 部分
Spring Richclient — 企业级富客户端开发框架介绍,第 1 部分 http://www.ibm.com/developerworks/cn/java/j-lo-spring-richc ...
- SDUST作业10 Problem J: 提取缩略词
Description 在英文文献中,尤其是专业文献中,经常有很多的缩略词,如CPU代表Central Processing Unit等.为了方便学习,Qili决定从一批英文论文中提取出所有的缩略词以 ...