2015-04-30 31 views
5

Şu anda, kaynak kodumdan bazılarını oluşturmak için JavaCC'yi (here'dan JavaCC toplayıcı eklentisiyle) kullanıyorum. Projenin geri kalanı bu koda bağlı. Projeyi IDEA'ya içe aktarır veya projeyi temizlersem, sınıflar bulunamadığı için hata alırım. Ancak, projeyi inşa etmek işe yarıyor.Gradle kullanıldığında oluşturulan kaynakları IntelliJ IDEA'ya nasıl entegre edebilirim?

Not çizelgesini değiştirmek mümkün mü, IntelliJ (ve muhtemelen diğer editörler de) kodu analiz etmeden önce bu kaynakları üretmeyi biliyor mu?

intellij yana
sourceSets { 
    gen { 
     java { 
      srcDir 'src/gen/java' 
     } 
    } 
} 

Ben en kolay yolu olurdu düşünce projeyi inşa ediyor:

Oluşturulan kod src kaydedilir/gen/java/ ve oluşturulan kodun konumu aracılığıyla bilinmektedir hale getirilebileceğini yapmak olmuştur:

compileJava.dependsOn <generateSourcesTask> 

Ama gradle dosyaya ifade ederek bir etkisi yoktur (muhtemelen JavaCC eklentisi zaten bu yapıyor çünkü).

+0

onun işi yapmak için JavaCC eklentisi için bir görev çalıştırmak gerekiyor mu? Eğer öyleyse, bunu compileJava için bir bağımlılık olarak ekleyemez misiniz? – tddmonkey

+0

Analiz ederek, denetimler yapmak mı istiyorsunuz? – fge

+0

@fge Bir java dosyasını açarken otomatik denetimi kastediyorum örneğin – TenPlusFive

cevap

1

Oluşturulan kaynakları ana bilgisayara eklemek istediniz mi? Şunun gibi:

sourceSets { 
    main { 
     java { 
      srcDirs = ["src/main/java", "src/gen/java"] 
     } 
    } 
} 

O benim için çalışır:

compileJava.dependsOn('generateSourcesTask') 
+0

Bu durumda yeni bir kaynak eklemenin anlamı nedir (üretilen)? –

+1

intellij fikrini görmek için –

+0

numaralı telefona bakın. Ancak bu, kodumuzu IDE'ye uyarlamak açısından kötü bir çözümdür. "Zeki" olması gerekmez mi? :) –

İlgili konular