2014-11-04 111 views
104

我环顾四周,并未找到将现有IntelliJ项目转换为Gradle的最佳解决方案。我在团队环境中工作,我们目前共享.ipr文件,因为我们有一些跟踪的构建配置。我们将最终摆脱那些赞成Gradle的人,但是我不能把事情搞得太多,直到完成Gradle转换。将Gradle支持添加到IntelliJ项目的最佳方法

此外,我们的Java源文件位于src目录的根目录,而不是标准的src/main/java。

有没有一种方法可以将Gradle添加到我的项目中,这不会让我删除并重新创建IntelliJ项目,并且在他们执行Git pull时不会让其他任何人都陷入困境?

+1

要回答您的源代码目录的问题 - 您需要用[sourceSets](https://gradle.org/docs/current/dsl/org.gradle.api.tasks.SourceSet.html)覆盖默认源目录)。看看我们如何在MongoDB Java驱动中做到这一点:https://github.com/mongodb/mongo-java-driver/blob/782a8c58cf13b0026ed4d58bfd6b74f1248c4b08/build.gradle#L110 – Trisha 2015-03-18 10:48:20

回答

127

你为什么不只是添加:

build.gradle 

在你的根项目文件夹,并使用插件,例如:

apply plugin: 'idea' 
//and standard one 
apply plugin: 'java' 

以及与此火从命令行:

gradle cleanIdea 

之后:

gradle idea 

之后,一切应该工作

+5

when尝试此解决方案是否有人遇到错误“Module'xx'不支持gradle?如果是这样如何解决 – 2015-08-11 19:51:07

+0

感谢这使我疯了,我无法弄清楚如何使IntelliJ刷新项目依赖关系后添加它构建.gradle – Amala 2016-02-18 18:31:40

+0

gradle idea(这取决于ideaProject,ideaModule,ideaWorkspace)对我来说不起作用,因为ideaModule保持失败,相反,任务gradle ideaProject工作正常,并且该项目现在启用了Gradle。 – paranza 2016-03-02 15:58:19

4

我正在使用IntelliJ的版本12。

我通过创建一个全新的项目和“从版本控制中检出”来解决类似的问题 以后合并这两个项目相当容易。

+2

我喜欢这个最好的,它很干净,很好 – 2015-11-13 13:42:35

31

另一种方法,更简单。

build.gradle 

文件添加到您的项目的根。关闭该项目。手动删除* .iml文件。然后选择“导入项目...”,导航到您的项目目录,选择build.gradle文件,然后单击确定。

4

只是作为未来的参考,如果你已经有了一个Maven项目所有你需要做的是做一个在你的项目gradle init目录这将产生build.gradle和其他依赖,然后在同一目录做一个gradle build

23

没有必要删除任何.iml文件。按照这样的:

  • 关闭该项目
  • File->Open...并选择新创建的build.gradle
  • 的IntelliJ会询问你是否要:
    • Open Existing Project
    • Delete Existing Project and Import
  • 选择第二个选项,和你做
+0

我该如何解决这个问题,即新项目在另一个文件夹中? – barracuda317 2017-06-23 15:31:13

6

在的IntelliJ 2017年2月4日我刚刚关闭了项目,并重新打开它,我得到了一个对话框,询问我是否愿意的build.gradle与连结的打开Gradle项目的导入对话框。

无需删除任何文件或想法插件添加到的build.gradle

+0

可以证实这很好地工作。只需在项目根目录下运行gradle init,下次打开项目时就会看到对话框。 – 2017-11-27 20:23:54

相关问题