我有一个gradle脚本,为我设置了一个eclipse项目。除了默认项目之外,我的项目还需要添加额外的项目方面。 The documentation有以下示例
eclipse {
wtp {
facet {
//you can add some extra wtp facets; mandatory keys: 'name', 'version':
facet name: 'someCoolFacet', version: '1.3'
}
}
}
我尝试使用给定的示例添加我自己的facet,但不是将添加的facet添加到现有facet,它实际上替换了所有其他facet,因此是设置中唯一的facet。显然,这不是我的意图。问题是,我如何将一个额外的方面添加到默认方面?
编辑:
我想创建一个脚本,将eclipse项目配置到一个文件夹,该文件夹只包含eclipse项目的项目结构,但没有配置文件(.classpath,.project,.settings /)。我正在尝试将Eclipse facet的Vaadin插件添加到Vaadin项目中。这就是我的脚本的样子
subprojects {
apply plugin: 'war'
apply plugin: 'eclipse-wtp'
sourceCompatibility = 1.6
targetCompatibility = 1.6
webAppDirName = 'WebContent'
vaadinDir = webAppDirName+'/VAADIN'
eclipse {
wtp {
facet {
facet name: 'com.vaadin.integration.eclipse.core', version: '7.0'
}
}
}
// Source directories
sourceSets{
main{
java{
srcDir 'src'
}
}
}
}
defaultTasks 'eclipse'
这是生成的构面设置
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<installed facet="com.vaadin.integration.eclipse.core" version="7.0"/>
</faceted-project>
如果没有定义任何自定义构面,则生成的配置为
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<fixed facet="jst.java"/>
<fixed facet="jst.web"/>
<installed facet="jst.web" version="2.4"/>
<installed facet="jst.java" version="6.0"/>
</faceted-project>
如上所述,我是设置中的所有方面:)
答案 0 :(得分:3)
修改默认值(而不是覆盖它们)有时会很棘手(Gradle解决这个问题不是一个简单的问题),但您可以尝试以下方法:
facet {
facets = facets
facet name: 'com.vaadin.integration.eclipse.core', version: '7.0'
}
或者,您可以显式声明默认构面以及自定义构面。