2014-11-04 157 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

相關問題