常用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 进 ...
随机推荐
- 使用UI Automation实现自动化测试 --工具使用
当前项目进行三个多月了,好久也没有写日志了:空下点时间,补写下N久没写的日志 介绍下两个工具 我本人正常使用的UISpy.exe工具和inspect.exe工具 这是UISPY工具使用的图,正常使用到 ...
- WWF3的持续化<第五篇>
WWF提供的持续化功能会自动记录工作流实例以及它包含的所有活动的执行状态,这些状态并不是指工作流上流转的表单所呈现的业务逻辑状态.WWF持续化功能就是将未执行完成的工作流实例以及该实例中各种活动的状态 ...
- 第九周java学习总结
20145306<java程序设计>第九周学习总结 教材学习内容总结 第十六章 一.JDBC入门 1.JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据 ...
- AJAX验证用户是否存在
<html> <head> <title> ajax验证 </title> </head> <body> <input t ...
- 021ARM处理器工作模式
1.User模式:usr,普通应用程序运行的模式: 2.FIQ模式:fiq,快速中断模式,当一个程序正在运行时,突然产生一个中断,而且这种中断属于快速中断,那么将进入快速中断模式下运行: 3.IRQ模 ...
- jQuery.prop() 使用详解
prop()函数用于设置或返回当前jQuery对象所匹配的元素的属性值. 该函数属于jQuery对象(实例).如果需要删除DOM元素的属性,请使用removeProp()函数. 语法 jQuery 1 ...
- C#winform在textbox插入内容换行
要让一个TextBox显示多行文本就得把它的Multiline属性设置为true,可是如果你是要把TextBox的Text属性设置多行文本时可能会遇到点麻烦,也许你会想到直接加一个换行符"\ ...
- ASP.NET的学习之asp.net整体运行机制
1.浏览器向服务器发送请求报文,服务器端的软件比如是IIS,接受请求 2.IIS通过aspnet_isapi.dll 这个程序集来请求FrameWork中的ASP.Net框架,这是对于集成模式 3.进 ...
- 最简单删除SQL Server中所有数据的方法
最简单删除SQL Server中所有数据的方法 编写人:CC阿爸 2014-3-14 其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间 ...
- 输出内容(document.write)四种写法
第一种:输出内容用""括起,直接输出""号内的内容 <script type="text/javascript"> docume ...