gradle 打war 包以及合并jar包
生活随笔
收集整理的這篇文章主要介紹了
gradle 打war 包以及合并jar包
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
build.gradle文件
apply plugin: 'war' webAppDirName = 'WebRoot' //設(shè)置 WebApp 根目錄 version = '' buildDir = 'target' //war 輸出路徑 sourceCompatibility='1.6' //設(shè)置jdk 版本 war{ baseName ="PCMS" //war名稱 } //定義目錄結(jié)構(gòu) sourceSets { main { java { srcDirs = ['src/cmes/java'] } resources { srcDirs = ['src/cmes/resources','src/plat/resources'] } } } // 設(shè)置 maven 庫(kù)地址 repositories { maven { url 'http://maven.oschina.net/content/groups/public/' } } //加載本地依賴 dependencies { providedCompile fileTree(dir: System.getenv("CATALINA_HOME")+'/lib', include: '*.jar') providedCompile fileTree(dir: 'WebRoot/WEB-INF/lib', include: '*.jar') //依賴的jar cargo.jarcargo('org.codehaus.cargo:cargo-ant:1.3.1') {exclude group: 'xml-apis', module: 'xml-apis'}cargo 'xml-apis:xml-apis:2.0.2' } //設(shè)置編碼 tasks.withType(Compile) { options.encoding = "UTF-8" }?
gradle.properties 設(shè)置
?
//支持中文文件 systemProp.file.encoding=UTF-8gradle 依賴管理:
//聲明外部屬性ext.cargoGroup = 'org.codehaus.cargo'ext.cargoVersion = '1.3.1'dependencies {//使用映射聲明依賴compile group: cargoGroup, name: 'cargo-core-uberjar',version: cargoVersion//用快捷方式來聲明,引用了前面定義的外部屬性cargo "$cargoGroup:cargo-ant:$cargoVersion"}排除傳遞依賴
dependencies {cargo('org.codehaus.cargo:cargo-ant:1.3.1') {exclude group: 'xml-apis', module: 'xml-apis'}cargo 'xml-apis:xml-apis:2.0.2'}exclude屬性值和正常的依賴聲明不太一樣,你只需要聲明group和(或)module,Gradle不允許你只排除指定版本的依賴。
有時(shí)候倉(cāng)庫(kù)中找不到項(xiàng)目依賴的傳遞依賴,這會(huì)導(dǎo)致構(gòu)建失敗,Gradle允許你使用transitive屬性來排除所有的傳遞依賴:
dependencies {cargo('org.codehaus.cargo:cargo-ant:1.3.1') {transitive = false}// 選擇性的聲明一些需要的庫(kù)}動(dòng)態(tài)版本聲明
果你想使用一個(gè)依賴的最新版本,你可以使用latest.integration,比如聲明 Cargo Ant tasks的最新版本,你可以這樣寫?org.codehaus.cargo:cargo-ant:latest-integration,你也可以用一個(gè)+號(hào)來動(dòng)態(tài)的聲明:
dependencies {//依賴最新的1.x版本cargo 'org.codehaus.cargo:cargo-ant:1.+'}合并jar并輸出:
task makeJar(type: Jar){archiveName = "xxxx.jar"delete 'build/outputs/xxxx.jar'from (project.zipTree('xxxxx/xx/.jar'))from (project.zipTree('xxxxx/xx/.jar'))destinationDir = file("build/libs")include(**/*.class)exclude "**/R.class"exclude "**/R\$*.class" } makeJar.dependsOn(build)?
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的gradle 打war 包以及合并jar包的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 魔兽世界矮人烈酒在哪里购买 矮人烈酒怎么
- 下一篇: eclipse 中 安装git 插件和使