2015-06-26 4 views
13

ग्रेड करने के लिए एक और जावा स्रोत निर्देशिका जोड़ें I जावा उदाहरण पैकेजस्क्रिप्ट

पैकेज com.example.testing;

जैसे फ़ाइल पेड़

app 
| 
    src->com->example->testing->Main.java 

और एक Gradle स्क्रिप्ट के साथ

:

apply plugin: 'java' 
apply plugin: 'application' 

sourceSets { 
    main { 
     java { 
      srcDirs 'src' 
     } 
    } 


} 

sourceSets.main.output.classesDir = file("classes") 
mainClassName = 'com.example.testing.Main' 

defaultTasks 'compileJava', 'run' 

अब मैं इस परियोजना के लिए कुछ मॉड्यूल जोड़ना चाहते हैं और मेरे फ़ोल्डरों इस

app 
| 
    src1->com->example->testing->Main.java 

    src2->com->another_example->another_testing->Library.java 
की तरह कुछ हो जाएगा

स्क्रिप्ट को क्रमबद्ध करने के लिए मैं नया स्रोत कोड कैसे जोड़ूं?

+4

आप मानक ग्रेडल/मेवेन सम्मेलनों का सम्मान क्यों नहीं करते? सभी पथों को कॉन्फ़िगर करने की आवश्यकता के बिना, सब कुछ स्वचालित रूप से ठीक काम करेगा। –

उत्तर

23

मैं मानक सम्मेलनों का सम्मान करने के बारे में @ जेबी निजेट से सहमत हूं। आप अभी भी एक अराजकतावादी हालांकि किया जा रहा है पर जोर देते हैं:

आप पहले से ही src अपने sourceset में घोषित किया है, क्यों नहीं src1 और src2 रूप में जोड़ दें? आप उन्हें एक ही स्रोत में जोड़ सकते हैं, या यदि आप चाहें तो प्रति मॉड्यूल को एक स्रोत निर्धारित कर सकते हैं।

sourceSets { 
    main { 
     java { 
      srcDirs 'src' 
      srcDirs 'src1' 
      srcDirs 'src2' 
     } 
    } 
} 
+0

क्या हम परियोजना के बाहर जाने वाले सापेक्ष पथ जोड़ सकते हैं? – bhantol

+1

@bhantol हाँ आप कर सकते हैं। – RaGe

+0

मेरे पास एक संबंधित प्रश्न है http://stackoverflow.com/questions/41190324/in-gradle-how-to-use-sources-from-relative-path-outside-of-project – bhantol