2015-09-22 16 views
2

我在那裏我使用搖籃多模塊項目。有一個模塊Data,我有Neo4J的依賴關係。它在下面使用lucene-core - 版本3.6.2。不同的JAR版本在編譯 - 搖籃工程(無論是在的IntelliJ和Eclipse)

我使用這個模塊在另一個模塊的依賴性,OE在那裏我使用耶拿文本-version 1.1.2,它採用lucene的核心版本4.6.1。現在,我發生了衝突,所以我運行了Gradle的dependencyInsight插件,並且在oe模塊中排除了Neo4J的依賴關係,因爲我不需要它們。該代碼在lucene 4.6.1版中使用Gradle編譯良好。

問題是,無論何時,我試圖在oe模塊中編寫代碼,我都會從lucence 3.6.2中獲得自動完成建議,但是當Gradle最終編譯它時,它會在corect版本4.6 0.1。

至於例子,我想要寫在Lucene的我自己的分析。您可以編寫分析儀的方式已從3.6版改爲4.6版。現在,編碼變得困難,如果我的IDE一直告訴我,我正在寫一個錯誤的代碼,基於一個我最終不會使用的jar。 IntelliJ Idea 13,企業版和Eclipse Luna都出現這種情況。

我這是怎麼了排除它們。

compile(project(":data")){ 
    exclude group:'org.springframework.data', module: 'spring-data-neo4j-rest' 
    exclude group:'org.springframework.data', module: 'spring-data-neo4j' 

} 

這是在我的oe模塊中爲lucene-core運行depedencyInsight的結果。

/oe$ gradle -q dependencyInsight --configuration compile --dependency lucene-core 
org.apache.lucene:lucene-core:4.6.1 
+--- compile 
+--- org.apache.jena:jena-text:1.1.2 
| \--- compile 
+--- org.apache.lucene:lucene-analyzers-common:4.6.1 
| +--- compile 
| \--- org.apache.jena:jena-text:1.1.2 (*) 
+--- org.apache.lucene:lucene-queries:4.6.1 
| \--- org.apache.lucene:lucene-queryparser:4.6.1 
|   \--- org.apache.jena:jena-text:1.1.2 (*) 
+--- org.apache.lucene:lucene-queryparser:4.6.1 (*) 
\--- org.apache.lucene:lucene-sandbox:4.6.1 
\--- org.apache.lucene:lucene-queryparser:4.6.1 (*) 

(*) - dependencies omitted (listed previously) 
+1

的IntelliJ中,你可以優先考慮它使用的jar點擊了依賴性選項卡上/下箭頭在項目結構模塊。不理想,但應修復代碼完成問題 – leeor

+0

做你剛剛說的,解決了問題。謝謝。 –

+0

可能是你應該張貼作爲答案,以便我可以接受它。 –

回答

2

intellij,你可以優先考慮它使用的jar點擊了dependencies選項卡上/下箭頭在project structure模塊。不理想,但應該修復代碼完成問題。