2014-11-18 10 views
15

मैं सिर्फ इंटेलीजे एक कोशिश दिया की वजह से Gradle परियोजना चल सकता क्योंकि ग्रहण मुझे फिर से नाराज। मैंने अपना ग्रेडल प्रोजेक्ट (जेट्टी, वाडिन) आयात किया और यह काफी आसानी से चला गया।इंटेलीजे नहीं, लापता कक्षा

Error:gradle-resources-test:vaadinsharedwidgets: java.lang.NoClassDefFoundError: org/apache/tools/ant/util/ReaderInputStream

"vaadinsharedwidgets" परियोजना के एक मॉड्यूल है: लेकिन जब मैं इसे चलाने के लिए करने की कोशिश की मैं "बनाने" के दौरान निम्न त्रुटि संदेश का सामना करना पड़ा। त्रुटि से जो मैं समझता हूं उससे, इंटेलिजे को चींटी नहीं मिलती है, लेकिन इसका इरादा है क्योंकि मैं चींटी का उपयोग नहीं करता हूं। यह भी ट्रांजिटिव निर्भरताओं का हिस्सा नहीं है। एक ही प्रोजेक्ट ग्रहण ठीक में चलता है और बिना किसी समस्या के इसे धीरे-धीरे काम करता है।

अपडेट: मैंने अभी ग्रहण में चेक किया है और किसी भी तरह ant.jar ग्रहण में क्लासपाथ पर है लेकिन मैं इसे किसी भी प्रोजेक्ट से लिंक नहीं कर सकता। मुझे आश्चर्य है कि यह कैसे मिला।

Update2: गुम संस्करण जानकारी:

  • इंटेलीजे: v14.0.1 सीई (कोई प्लग-इन)
  • Gradle: 2.2 (आवरण के माध्यम से किया जाता है)
  • जावा 8 (1.8.0 B05)
  • Vaadin 7.3.4

build.gradle:

apply from: 'http://nexus/gradle/vaadin.gradle' 
apply from: 'http://nexus/gradle/java8.gradle' 

version = '1.1' 

description = "Gemeinsame Vaadin-Widgets" 

vaadin.widgetset 'net.xyz.vaadinsharedwidgets.VaadinsharedWidgetsWidgetset' 

dependencies { 
    compile project(':ibhtheme') 
    compile 'com.vaadin:vaadin-server:' + vaadin.version 
    compile 'com.vaadin:vaadin-client:' + vaadin.version 
} 

jar{ 
    // Include source in jar 
    from sourceSets.main.allJava 
} 

sourceSets.main.resources.srcDir 'src/main/webapp' 

vaadin.gradle:

apply from: 'http://plugins.jasoft.fi/vaadin.plugin?version=0.9.2' 

configurations { 
    def conf = 'vaadin-client' 
    def sources = project.sourceSets.main 
    def testSources = project.sourceSets.test 

    if (!project.configurations.hasProperty(conf)) { 
     project.configurations.create(conf) 

     sources.compileClasspath += project.configurations[conf] 
     testSources.compileClasspath += project.configurations[conf] 
     testSources.runtimeClasspath += project.configurations[conf] 

     project.configurations[conf].exclude group: 'org.eclipse.jetty' 
    } 
} 


vaadin { 
    version '7.3.4' 
    push true 
} 

java8.gradle:

apply plugin: 'java' 

sourceCompatibility = 1.8 
targetCompatibility = 1.8 

group = 'net.xyz' 

dependencies { 
    compile 'org.slf4j:slf4j-api:1.7.5' 
    compile 'com.google.guava:guava:16.0.1' 
    compile 'org.springframework:spring-context:4.0.3.RELEASE' 

    testCompile 'org.testng:testng:6.8.7' 
    testCompile 'org.mockito:mockito-all:1.9.5' 
    testCompile 'org.easytesting:fest-assert-core:2.0M10' 
    testCompile 'org.springframework:spring-test:4.0.3.RELEASE' 
} 

के लिए मॉड्यूल नहीं करता है 'एक अतिरिक्त निर्भरता के रूप में चींटी जोड़ना टी काम नहीं

+1

ग्रैडल में वास्तव में चींटी होती है ताकि आप मौजूदा चींटी कार्यों का पुनः उपयोग कर सकें। आपने अपना ग्रेडल बिल्ड या संस्करण शामिल नहीं किया था।असल में आपने त्रुटि के बाहर कुछ भी शामिल नहीं किया है, जिससे किसी के लिए मदद करना मुश्किल हो जाता है। – SteveD

+0

गायब जानकारी के बारे में खेद है। मैंने प्रासंगिक संस्करण जोड़े। – ssindelar

+0

कृपया vadinsharedwidgets मॉड्यूल से build.gradle शामिल करें। – SteveD

उत्तर

2

के बाद कुछ फेरबदल और कोशिश और त्रुटि मैंने पाया कि vaadin.gradle में निम्न कोड अपराधी था और उसे निकाल दिया:

configurations { 
    def conf = 'vaadin-client' 
    def sources = project.sourceSets.main 
    def testSources = project.sourceSets.test 

    if (!project.configurations.hasProperty(conf)) { 
     project.configurations.create(conf) 

     sources.compileClasspath += project.configurations[conf] 
     testSources.compileClasspath += project.configurations[conf] 
     testSources.runtimeClasspath += project.configurations[conf] 

     project.configurations[conf].exclude group: 'org.eclipse.jetty' 
    } 
} 

यह बजाय jetty9 उपयोग करने के लिए एक पुरानी हैक का हिस्सा था जेट्टी 8, जिसे वाडिन-ग्रेडल प्लगइन के पुराने संस्करणों द्वारा उपयोग किया गया था। वर्तमान संस्करण 9.2.2 का उपयोग करता है जो ठीक लगता है।

10

मैं एक ही त्रुटि एक जावा परियोजना में एक से अधिक उप साथ इंटेलीजे 14. में

अद्यतन कर रहा है 15.0.1 के लिए का सामना करना पड़ा, IntelliJ में के माध्यम से Gradle परियोजनाओं ताज़ा और समस्या का समाधान हो पुन: प्रारंभ।

+1

क्या आपका मतलब 15.0.1 है? वैसे भी, मुझे अभी भी समस्या है। – Joqn

+0

@ जोकन: हाँ, मैंने संस्करण संख्या संपादित की है। –

+5

https://youtrack.jetbrains.com/issue/IDEA-147146; फ़ाइल/अमान्य कैश + पुनरारंभ करने में मदद करता है। –

1

मेनू से File → Invalidate Caches/Restart चुनें और Invalidate and Restart चुनें। यह मेरे लिए मुद्दा तय किया।

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