API文档: | EclipseWtpComponent |
---|
允许微调 Eclipse 插件的 wtp 组件详细信息
混合所有可能属性的使用示例。请记住,通常您不必直接配置它们,因为 Gradle 是免费配置的!
plugins { id 'war' // or 'ear' or 'java' id 'eclipse-wtp' } configurations { someInterestingConfiguration anotherConfiguration } eclipse { //if you want parts of paths in resulting file(s) to be replaced by variables (files): pathVariables 'GRADLE_HOME': file('/best/software/gradle'), 'TOMCAT_HOME': file('../tomcat') wtp { component { //you can configure the context path: contextPath = 'someContextPath' //you can configure the deployName: deployName = 'killerApp' //you can alter the wb-resource elements. //non-existing source dirs won't be added to the component file. sourceDirs += file('someExtraFolder') // dependencies to mark as deployable with lib folder deploy path libConfigurations += [ configurations.someInterestingConfiguration ] // dependencies to mark as deployable with root folder deploy path rootConfigurations += [ configurations.someInterestingConfiguration ] // dependencies to exclude from wtp deployment minusConfigurations << configurations.anotherConfiguration //you can add a wb-resource elements; mandatory keys: 'sourcePath', 'deployPath': //if sourcePath points to non-existing folder it will *not* be added. resource sourcePath: 'extra/resource', deployPath: 'deployment/resource' //you can add a wb-property elements; mandatory keys: 'name', 'value': property name: 'moodOfTheDay', value: ':-D' } } }
为了解决边缘情况,用户可以对生成的 XML 文件执行高级配置。还可能通过 beforeMerged 和 whenMerged 闭包影响 eclipse 插件合并现有配置的方式。
beforeMerged 和whenMerged 闭包接收WtpComponent
对象
高级配置示例:
plugins { id 'war' id 'eclipse-wtp' } eclipse { wtp { component { file { //if you want to mess with the resulting XML in whatever way you fancy withXml { def node = it.asNode() node.appendNode('xml', 'is what I love') } //closure executed after wtp component file content is loaded from existing file //but before gradle build information is merged beforeMerged { wtpComponent -> //tinker with WtpComponent here } //closure executed after wtp component file content is loaded from existing file //and after gradle build information is merged whenMerged { wtpComponent -> //you can tinker with the WtpComponent here } } } } }
财产 | 描述 |
classesDeployPath | 类的部署路径。 |
contextPath | Web 应用程序的上下文路径 |
deployName | 要使用的部署名称。 |
file | |
libConfigurations | 其文件将被标记为部署的配置,部署路径为 |
libDeployPath | 库的部署路径。 |
minusConfigurations | 其文件将从 wtp 部署中排除的配置。 |
properties | 附加属性元素。 |
resources | 附加的 wb 资源元素。 |
rootConfigurations | 其文件将被标记为使用部署路径“/”进行部署的配置。 |
sourceDirs | 要转换为 wb-resource 元素的源目录。 |
堵塞 | 描述 |
file | 启用高级配置,例如修改输出 XML 或影响现有 wtp 组件文件内容与 gradle 构建信息合并的方式 |
String
classesDeployPath
类的部署路径。
有关示例,请参阅文档EclipseWtp
- 默认带有
eclipse
和war
插件: /WEB-INF/classes
- 默认带有
eclipse
和ear
插件: /
String
deployName
要使用的部署名称。
有关示例,请参阅文档EclipseWtp
- 默认带有
eclipse
和war
插件: eclipse.project.name
- 默认带有
eclipse
和ear
插件: eclipse.project.name
Set
<Configuration
>
libConfigurations
Set
<Configuration
>其文件将被标记为部署的配置,部署路径为EclipseWtpComponent.getLibDeployPath()
.
有关示例,请参阅文档EclipseWtp
- 默认带有
eclipse
和war
插件: [project.configurations.runtimeClasspath]
- 默认带有
eclipse
和ear
插件: [project.configurations.earlib]
String
libDeployPath
库的部署路径。
有关示例,请参阅文档EclipseWtp
- 默认带有
eclipse
和war
插件: /WEB-INF/lib
- 默认带有
eclipse
和ear
插件: /lib
Set
<Configuration
>
minusConfigurations
Set
<Configuration
>其文件将从 wtp 部署中排除的配置。
有关示例,请参阅文档EclipseWtp
- 默认带有
eclipse
和war
插件: [project.configurations.providedRuntime]
- 默认带有
eclipse
和ear
插件: []
List
<WbResource
>
resources
List
<WbResource
>附加的 wb 资源元素。
有关示例,请参阅文档EclipseWtp
只有链接到现有目录 ( WbResource.getSourcePath()
) 的资源才会添加到 wtp 组件文件中。原因是项目导入Eclipse时,不存在的资源目录声明会导致错误。
- 默认带有
eclipse
和war
插件: [deployPath: '/', sourcePath: project.webAppDirName]
- 默认带有
eclipse
和ear
插件: []
Set
<Configuration
>
rootConfigurations
Set
<Configuration
>其文件将被标记为使用部署路径“/”进行部署的配置。
有关示例,请参阅文档EclipseWtp
- 默认带有
eclipse
和war
插件: []
- 默认带有
eclipse
和ear
插件: [project.configurations.deploy]]
要转换为 wb-resource 元素的源目录。
有关示例,请参阅文档EclipseWtp
只有存在的源目录才会添加到 wtp 组件文件中。将项目导入 Eclipse 时,不存在的资源目录声明会导致错误。
- 默认带有
eclipse
和war
插件: - 源目录来自
project.sourceSets.main.allSource
- 默认带有
eclipse
和ear
插件: java
除非未应用插件,否则相同,则:[project.appDirName]
void
file
(行动)Action
<? super XmlFileContentMerger
>
Action
<? super XmlFileContentMerger
>启用高级配置,例如修改输出 XML 或影响现有 wtp 组件文件内容与 gradle 构建信息合并的方式。
例如,请参阅文档EclipseWtpComponent
启用高级配置,例如修改输出 XML 或影响现有 wtp 组件文件内容与 gradle 构建信息合并的方式
传递给whenMerged{}和beforeMerged{}闭包的对象是类型WtpComponent
例如,请参阅文档EclipseWtpComponent