W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Ear插件添加了對(duì)組裝Web應(yīng)用程序EAR文件的支持。 它將添加默認(rèn)EAR文件生成任務(wù)。 它不需要Java插件,對(duì)于使用Java插件的項(xiàng)目,它會(huì)禁用默認(rèn)的JAR文件生成。
使用ear插件需要在構(gòu)建腳本下包括以下內(nèi)容
例51.1.使用ear插件
build.gradle
apply plugin 'ear'
War插件會(huì)添加下列任務(wù)到項(xiàng)目.
表51.2.War插件-任務(wù)
任務(wù)名 | 依賴于 | 類型 | 描述 |
---|---|---|---|
ear | compile (僅在java插件存在時(shí)) | Ear | 組裝應(yīng)用程序Ear文件 |
Ear插件由其他已存在的插件添加下列依賴任務(wù).
表51.2.Ear插件-附加的依賴任務(wù)
任務(wù)名 | 依賴于 |
---|---|
assemble | ear |
表25.3.Ear插件-項(xiàng)目布局
文件夾 | 含義 |
---|---|
src/main/application | Ear資源,比如META-INF目錄 |
Ear插件添加了兩個(gè)依賴配置:deploy和earlib。 deploy中的所有依賴關(guān)系都放在EAR存檔的根目錄中,并且是不可傳遞的(not transitive)。 earlib配置中的所有依賴關(guān)系都放在EAR存檔中的'lib'目錄中,并且是可傳遞的(transitive)。
表51.4.Ear插件-目錄配置
屬性名稱 | 類型 | 默認(rèn)值 | 描述 |
---|---|---|---|
appDirName | String | src/main/application | 應(yīng)用的資源文件夾,為與項(xiàng)目的相對(duì)路徑 |
libDirName | String | lib | 生成的ear文件中l(wèi)ib目錄的名字 |
deploymentDescriptor | org.gradle.plugins.ear.descriptor.DeploymentDescriptor | 在一個(gè)默認(rèn)的構(gòu)部署配置文件里:application.xml | 生成部署描述符文件的元數(shù)據(jù),例如 application.xml。 如果此文件已存在于appDirName / META-INF中,則將使用現(xiàn)有文件內(nèi)容,并忽略ear.deploymentDescriptor中的顯式配置。 |
這些屬性由一個(gè)EarPluginConvention公共對(duì)象提供
War任務(wù)默認(rèn)會(huì)把src/main/application的內(nèi)容復(fù)制到歸檔目錄的根目錄。如果配置文件META-INF/application.xml不存在,它將被自動(dòng)生成。
API文檔中有更多關(guān)于Ear的信息.
下面的例子中有一些重要的自定義選項(xiàng)
例25.2.定制Ear插件
build.gradle
pply plugin: 'ear'
apply plugin: 'java'
repositories { mavenCentral() }
dependencies {
// The following dependencies will be the ear modules and
// will be placed in the ear root
deploy project(path: ':war', configuration: 'archives')
// The following dependencies will become ear libs and will
// be placed in a dir configured via the libDirName property
earlib group: 'log4j', name: 'log4j', version: '1.2.15', ext: 'jar'
}
ear {
appDirName 'src/main/app' // use application metadata found in this folder
// put dependent libraries into APP-INF/lib inside the generated EAR
libDirName 'APP-INF/lib'
deploymentDescriptor { // custom entries for application.xml:
// fileName = "application.xml" // same as the default value
// version = "6" // same as the default value
applicationName = "customear"
initializeInOrder = true
displayName = "Custom Ear" // defaults to project.name
// defaults to project.description if not set
description = "My customized EAR for the Gradle documentation"
// libraryDirectory = "APP-INF/lib" // not needed, above libDirName setting does this
// module("my.jar", "java") // won't deploy as my.jar isn't deploy dependency
// webModule("my.war", "/") // won't deploy as my.war isn't deploy dependency
securityRole "admin"
securityRole "superadmin"
withXml { provider -> // add a custom node to the XML
provider.asNode().appendNode("data-source", "my/data/source")
}
}
}
你也可以使用一些Ear任務(wù)提供的自定義選項(xiàng),如from和metaInf.
-/-/-/-/-//-/-/-/--/-/-/-/-/-當(dāng)前進(jìn)度↑↑-/-/-/-/-/--/-/-/-/-/-/-/-/-/
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: