के भीतर कक्षाओं में परिभाषित चर का उपयोग करने में सक्षम नहीं है। मैं ड्रॉपवार्ड उदाहरणों से जावा से ग्रोवी तक कुछ कोड पोर्ट करने का प्रयास कर रहा हूं।ग्रोवी एनोटेशन
मुझे लगता है कि जावा के भीतर, मैं निम्नलिखित कोड किसी भी मुद्दे के बिना उपयोग कर सकते हैं:, ग्रूवी संकलक (दोनों 1.8 और 2.0.6) के साथ
package com.example.helloworld;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
@Produces(MediaType.APPLICATION_JSON)
public class HelloWorldService{
}
हालांकि, वर्ग एक noClassFoundException साथ संकलित करने के लिए विफल रहता है MediaType.APPLICATION_JSON
आसपासअगर मैं वास्तविक स्ट्रिंग मान
@Produces('application/json')
public class HelloWorldService{
}
सब कुछ पूरी तरह से काम करता है का उपयोग करने के लिए इस कोड को बदल जाते हैं।
क्या ग्रोवी एनोटेशन और जिस तरह से जावा करता है, उसके बीच कोई अंतर है?
पूर्णता के लिए, यह एक Gradle परियोजना का हिस्सा है और यहाँ मेरी build.gradle है (फ़ाइल src के तहत चला जाता है/ग्रूवी/com/उदाहरण/HelloWorld)
apply plugin: 'groovy'
// Set our project variables
project.ext {
dropwizardVersion = '0.6.1'
}
repositories {
mavenCentral()
}
dependencies {
compile group: 'com.yammer.dropwizard', name: 'dropwizard-core', version: dropwizardVersion
groovy group: 'org.codehaus.groovy', name: 'groovy-all', version: '1.8.7'
}
संकलन त्रुटि है:
की वजह से: java.lang.RuntimeException: java.lang.ClassNotFoundException: java.lang.ClassNotFoundException: कॉम com.sun.ws.rs.ext.RuntimeDelegateImpl ... 17 अधिक की वजह से। sun.ws.rs.ext.RuntimeDe org.gradle.api.internal.tasks.compile.TransformingClassLoader.findClass (TransformingClassLoader.java:47)
क्या यह '@Produces (javax.ws.rs.core.MediaType.APPLICATION_JSON) ' –
के साथ काम करता है, नहीं, लेकिन यह त्रुटि नहीं करता है लेकिन त्रुटि मुझे लगता है कि यह एक ग्रोवी की बजाय एक धीरे-धीरे चीज हो सकती है चीज –
एक ग्रेबल बग प्रतीत होता है क्योंकि मैं ग्रोवी-ग्रहण और मेवेन का उपयोग करके समीकरण को संकलित करने में सक्षम हूं। –