Java 使用Gradle将错误文件添加到WAR包
我正在使用Gradle 1.5,并且我正在尝试使它适应Eclipse动态项目 当通过eclipse导出WAR时,WAR文件的根上直接有Java 使用Gradle将错误文件添加到WAR包,java,war,gradle,Java,War,Gradle,我正在使用Gradle 1.5,并且我正在尝试使它适应Eclipse动态项目 当通过eclipse导出WAR时,WAR文件的根上直接有xhtml文件,我用Gradle成功地做到了这一点 但是在我的Gradle exported war上,我在WEB-INF/classes中复制了xhtml文件以及.class文件 我只想把我的.class文件放在那个文件夹中,但我还没有找到一种方法 这是我的build.gradle文件的相关部分 apply plugin: 'java' apply plugin
xhtml
文件,我用Gradle成功地做到了这一点
但是在我的Gradle exported war上,我在WEB-INF/classes
中复制了xhtml
文件以及.class
文件
我只想把我的.class
文件放在那个文件夹中,但我还没有找到一种方法
这是我的build.gradle
文件的相关部分
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'war'
webAppDirName = 'WebContent'
sourceSets {
main {
java {
srcDir 'src'
}
}
}
eclipse {
// my eclipse plugin config..
}
dependencies {
// my dependencies config.
}
我对war插件所做的唯一定制是将webAppDirName
更改为指向我的WebContent
文件夹
有人知道如何定义WEB-INF/classes
目录中的内容吗?我似乎弄不懂它的窍门
编辑 通过将资源引用到我的
bin
目录,我成功地删除了.xhtml
副本,如下所示:
sourceSets {
main {
java {
srcDir 'src'
}
resources {
srcDir 'bin'
}
}
}
但是我的WEB-INF
中仍然有错误的文件
我甚至有这样的结构WEB-INF/classes/WEB-INF
。我不知道为什么要将这些文件夹添加到我的classes
目录中,因为它们不存在于我的bin
我希望我的bin
中的类位于WEB-INF/classes
默认情况下,my
WebContent
中的静态资源位于WAR文件的根目录下,进入WEB-INF/classes
的是main
源集(编译的类和处理的资源)的输出。构建脚本声明了一个附加的源目录(src
),并保留默认的资源目录。您是否在src/main/java
或src/main/resources
下有任何文件?Eclipse使用bin
文件夹作为其输出文件夹,因此您的文件有可能以这种方式混淆。您对如何防止额外的文件夹被添加到我的classes
目录有何建议?你还需要什么信息吗?我不知道你的源目录结构是什么。同样,您是否在src/main/java
或src/main/resources
下有任何文件?您是否尝试覆盖默认设置(例如,srcDirs=['src']
),而不是添加其他目录?没有我的文件直接位于src
下,没有main/java
结构。你能编辑你的答案给我看一个覆盖的例子吗?我编辑了从resources{srcDir'bin}
到resources{srcDirs=['bin']}
的条目,如果只复制bin
目录中的文件吗?就资源而言,答案是肯定的。对于sourceset.main.java
,您也应该这样做。