为什么提供了编译依赖项?

时间:2015-07-29 08:56:26

标签: eclipse gradle gradle-eclipse

build.gradle我有

dependencies {
    ...
    providedCompile 'javax:javaee-web-api:7.0'
}

我在Eclipse Mars 4.5.0中导入了项目(我还安装了Gradle IDE 3.7.0.201506251228-RELEASE)。 Gradle dependencies包含库,Web App Libraries不包含库。到目前为止都很好。但是为什么将这个库部署到WEB-INF/lib

1 个答案:

答案 0 :(得分:1)

这是带有工具的known issue。出现此问题的原因是Gradle的工具API没有为IDE提供足够的信息来区分其他依赖项。因此,IDE无法正确配置部署程序集。

该问题有一种解决方法(如错误报告中所述):可以定义全局的regexp列表,以排除部署中的特定依赖项。转到“Gradle>> WTP”偏好设置即可找到它。

或者,您可以禁用“依赖关系管理”并尝试依赖Gradle的eclipse插件(即“apply plugin:'eclipse-wtp'”)来生成类路径和部署程序集。这可能会更好。

通常,在使用基于wtp的项目时,最好使用具有依赖关系管理功能的设置,因为存在这样的错误。