2016-02-04 4 views
5

मैं बचत का उपयोग करें और यह निर्माण निर्देशिका (build/generated-sources/thrift/<package name>/<class>) के तहत लेकिन के तहत कुछ स्रोत जावा फ़ाइलें (इंटरफेस) उत्पन्न करता है मेरी src/main/java मैं भी बचत द्वारा उत्पन्न इंटरफेस को लागू करता है मेरी वर्ग है जो उत्पन्न जावा फाइलों में के रूप में ही पैकेज परिभाषा है और मेरे श्रेणियां होती हैं तो कैसे मैं अपने build.gradle में यह कॉन्फ़िगर कर सकते हैं तो यह निर्माणमैं ग्राडल और इंटेलिजे में अपने स्रोत पथ में जेनरेट किए गए स्रोत फ़ोल्डर को कैसे जोड़ सकता हूं?

plugins { 
    id "org.jruyi.thrift" version "0.3.1" 
} 
apply plugin: 'idea' 
apply plugin: 'java' 
apply plugin: 'maven' 
apply plugin: "org.jruyi.thrift" 

group 'com.hello' 
version '1.0-SNAPSHOT' 

sourceCompatibility = 1.5 

repositories { 
    mavenCentral() 
} 

dependencies { 
    compile group: 'org.apache.thrift', name: 'libthrift', version:'0.9.3' 
    compile 'com.datastax.cassandra:cassandra-driver-core:3.0.0' 
    compile 'com.datastax.cassandra:cassandra-driver-mapping:3.0.0' 
    testCompile group: 'junit', name: 'junit', version: '4.11' 
} 

compileThrift { 
    thriftExecutable "/usr/local/hello/bin/thrift" 
    sourceDir "src/main/thrift" 
    createGenFolder false 
} 

task thrift(type: Exec) { 
    commandLine '/usr/local/hello/bin/thrift' 
} 


compileJava { 
    dependsOn 'compileThrift' 
+0

क्या विभाजन उन स्रोतों को क्रमशः उत्पन्न करता है? – acdcjunior

+0

हां। मैंने अपनी ग्रेडल फ़ाइल – user1870400

+1

संलग्न की है: 'sourceSets.main.java {srcDir" $ buildDir/जेनरेट-स्रोत/थ्रिफ्ट "}' – RaGe

उत्तर

4

Gradle निर्माण स्वचालित रूप से काम करना चाहिए और साथ ही पर मैं ntelliJ काम करता है। इसे इंटेलिज पर काम करने के लिए, अपने build.gradle में निम्नलिखित जोड़ने का प्रयास करें।

idea.module.sourceDirs += file("$buildDir/generated-sources/thrift") 

अपनी ग्रेडल परियोजनाओं को रीफ्रेश करना न भूलें।

संबंधित मुद्दे