首页 文章

如何从STS和Gradle开始

提问于
浏览
20

安装了基于Kepler的STS 3.4.0.RELEASE(当前最新版本)和Dashboard Extensions中的Gradle Support软件包 . 现在我想从头创建一个Spring MVC项目,它使用Gradle作为构建和依赖管理工具而不是Maven .

我首先创建一个带有Spring MVC项目模板的Spring项目,但显然这是基于Maven的,并且在任何向导屏幕中都没有选项可以将项目切换到Gradle . 因此,在创建之后,我右键单击该项目并选择Configure> Convert to Gradle Project . 然而,与我的期望相反,该项目仍然保持其Maven性质,项目中的依赖项仍然属于Maven,尽管Gradle启用了依赖项解析, pom.xml 文件仍然存在,并且没有 build.gradle 文件可供查看 . Eclipse的控制台报告了一个成功的构建,我认为它来自Gradle:但基于什么?当我打开Gradle Tasks视图时,它是空的;如果我尝试刷新它,则会在触发另一次成功构建之前显示一条消息,表明该模型尚未可用 . 然后,当我尝试从项目中删除Maven性质时,错误开始出现,关于不再找到的类和标记库描述符 . 我从项目的上下文菜单中选择Gradle> Refresh Dependencies,但它没有任何效果 .

我尝试相反的方法:从头开始创建一个Gradle项目 . 遗憾的是,Gradle模板根本不涉及Spring项目,之后添加Spring属性没有实际效果,也无法找到将Spring MVC项目模板应用于这个新创建的Gradle项目的方法 .

在互联网上,每个人都在谈论Gradle Eclipse插件的导入功能有多强大,以及如何在IDE外部创建Gradle项目,然后为Eclipse创建必要的文件以便能够导入项目,最后导入它并能够使用IDE进行开发 . 这些教程中使用的示例项目不是Spring MVC项目,因此我将独立创建目录层次结构并进一步配置 .

所以我想知道:就像在STS中创建一个带有Gradle的Spring MVC项目这样的事情甚至可能吗?鉴于STS,Spring和Eclipse Gradle插件是由同一个供应商开发的,你会打赌它是,因为它似乎是一个基本特性,即使是第一个版本的STS / Spring / Gradle集成也几乎不会丢失工具 . 那么,在尝试实现目标时,我是否想念一些东西?并且,为了防止这种情况发生,还有其他方法可以在STS中创建基于Gradle的Spring MVC项目吗?或者只是将基于Maven的一个正确转换为Gradle?

3 回答

  • 3

    这个问题已经很久了,当问到这个问题时,你的问题可能没有一个好的答案,但今天有问题 .

    您可以导入任何spring.io getting started guides的基于gradle的版本 .

    要最轻松地导入这些项目,您将需要最新版本的STS和Gradle Tooling(例如版本3.5.1) . 然后使用“文件>>新建”菜单中的“导入入门内容”向导 . 该向导允许您搜索可用指南并导入其配置为maven或gradle项目的示例项目 .

  • 2

    @Giulio,你无法表达我对此的看法 .

    我可以在这里链接部分解决方案:Gradle – Spring MVC Web Project Example . 部分原因是因为创建的项目看起来不像STS中的Spring项目,所以我担心你会失去一些东西 .

    我希望在STS中看到一种自动创建Spring项目的方法,该项目尽快使用Gradle . 同时我会依赖Maven ......

  • 2

    在Eclipse-Kepler版本中没有直接的方法来创建基于Gradle的Spring项目,但是有一种解决方法 .

    创建一个基于Maven的Spring项目 . 现在转到包含文件'pom.xml'的文件夹 . 运行'gradle init'命令(为此,您应该在系统上安装gradle) .

    在此之后,从项目的上下文菜单中禁用Maven Nature(右键单击项目> Maven>禁用Maven Nature) . 现在再次从上下文菜单中将此项目转换为Gradle(右键单击项目>配置>转换为Gradle项目)

    您可以在Gradle Tasks中找到所有可用的任务,并且build.gradle中存在所有依赖项

相关问题