【发布时间】:2016-08-06 14:52:46
【问题描述】:
我使用 Eclipse Mars.2 (4.5.2) 和 Buildship 1.0.14。 Gradle 版本是 2.12。
我将我的 gradle 项目导入 Eclipse。
导入前不存在 .project 或 .classpath 文件。已成功导入所有模块。但是几乎每个使用 java 代码的项目都缺少依赖项并显示红色“X”。
如果您打开一个 java 文件出错,您会看到 Eclipse 无法解析导入。但是如果你按名称打开导入的类,它可以在其他模块的依赖中找到它。
Gradle -> 刷新项目没有帮助。
在根build.gradle中声明的必要依赖是这样的:
ext.library = [
swagger: [
[ group: "io.swagger", name: "swagger-annotations", version: "1.5.3" ],
[ group: "io.swagger", name: "swagger-core", version: "1.5.3" ],
[ group: "io.swagger", name: "swagger-jaxrs", version: "1.5.3" ]
]
]
在模块中我这样声明:
dependencies {
providedCompile library.swagger
}
当您从命令行甚至从 Eclipse 执行 gradle build 时,构建成功。
可以在github 上找到重现此问题的小项目示例(感谢 RaGe 参与其中)。
您能帮我用 Eclipse 解决这个问题吗?
【问题讨论】:
-
你用的是什么gradle版本?
-
你在使用 gradle war 插件吗?
-
Gradle 版本是 2.12。是的,使用了war插件。
-
无法使用 eclipse mars 2 和 buildship 1.0.14 重现。 Here's the sample code I used。在新导入 eclipse 时,buildship 会下载所有 swagger 和传递依赖项和 imports work fine。
-
RaGe,我能够修改您的示例以重现该问题。分叉到github.com/ddska/SO-36633482-eclipse-with-buildship
标签: java eclipse gradle gradle-eclipse buildship