2013-01-24 9 views
17

क्या किसी ने जावा 7 के साथ एक Grails 1.3.7 ऐप चलाने की किस्मत है? मैंने एक नया नया Grails 1.3.7 ऐप बनाया और जावा 7 के तहत इसे चलाने का प्रयास किया। मुझे नीचे त्रुटि मिलती है लेकिन ऐप ठीक चल रहा है। हमारे पास कुछ 1.3.7 ऐप्स हैं जिन्हें हम Grails 2.x में अपग्रेड करने के लिए अनिच्छुक हैं, इसलिए किसी भी विचार की बहुत सराहना की जाएगी।Grails 1.3.7/जावा 7 संगतता

Unable to use direct char[] access of java.lang.String 
java.lang.NoSuchFieldException: count 
    at java.lang.Class.getDeclaredField(Class.java:1899) 
    at org.codehaus.groovy.grails.web.util.StringCharArrayAccessor.<clinit>(StringCharArrayAccessor.java:53) 
    at org.codehaus.groovy.grails.web.util.StreamCharBuffer.readAsString(StreamCharBuffer.java:531) 
    at org.codehaus.groovy.grails.web.util.StreamCharBuffer.toString(StreamCharBuffer.java:552) 
    at org.codehaus.groovy.grails.web.pages.FastStringWriter.getValue(FastStringWriter.java:59) 
    at org.codehaus.groovy.grails.web.pages.FastStringWriter.toString(FastStringWriter.java:55) 
    at org.codehaus.groovy.grails.web.pages.GroovyPageParser.startTag(GroovyPageParser.java:1119) 
    at org.codehaus.groovy.grails.web.pages.GroovyPageParser.page(GroovyPageParser.java:801) 
    at org.codehaus.groovy.grails.web.pages.GroovyPageParser.generateGsp(GroovyPageParser.java:380) 
    at org.codehaus.groovy.grails.web.pages.GroovyPageParser.parse(GroovyPageParser.java:326) 
    at org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine.buildPageMetaInfo(GroovyPagesTemplateEngine.java:584) 
    at org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine.createTemplate(GroovyPagesTemplateEngine.java:493) 
    at org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine.createTemplateWithResource(GroovyPagesTemplateEngine.java:473) 
    at org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine.createTemplate(GroovyPagesTemplateEngine.java:246) 
    at org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine.createTemplateForUri(GroovyPagesTemplateEngine.java:373) 
    at org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine.createTemplateForUri(GroovyPagesTemplateEngine.java:345) 
    at org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine.createTemplate(GroovyPagesTemplateEngine.java:262) 
    at org.codehaus.groovy.grails.web.servlet.view.GroovyPageView.renderWithTemplateEngine(GroovyPageView.java:146) 
    at org.codehaus.groovy.grails.web.servlet.view.GroovyPageView.renderMergedOutputModel(GroovyPageView.java:81) 
    at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250) 
    at org.codehaus.groovy.grails.web.mapping.filter.UrlMappingsFilter.renderViewForUrlMappingInfo(UrlMappingsFilter.java:260) 
    at org.codehaus.groovy.grails.web.mapping.filter.UrlMappingsFilter.doFilterInternal(UrlMappingsFilter.java:189) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.obtainContent(GrailsPageFilter.java:245) 
    at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.doFilter(GrailsPageFilter.java:134) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.codehaus.groovy.grails.web.servlet.filter.GrailsReloadServletFilter.doFilterInternal(GrailsReloadServletFilter.java:104) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequestFilter.doFilterInternal(GrailsWebRequestFilter.java:69) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.codehaus.groovy.grails.web.filters.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:69) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) 
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) 
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237) 
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) 
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) 
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) 
    at java.lang.Thread.run(Thread.java:722) 

उत्तर

9

कि कष्टप्रद लेकिन अनदेखी करने के लिए सुरक्षित, और 2.1.1 और 2.2 में ठीक किया गया है - जानकारी के लिए https://github.com/grails/grails-core/issues/2359 देखते हैं।

+0

थोड़ा सा संबंधित - परियोजना बनाने के लिए मेवेन का उपयोग करते समय मुझे अभी भी Grails 2.2 और JDK 1.7 के साथ समस्याएं हैं। कृपया मेरा प्रश्न यहां देखें: http://stackoverflow.com/questions/15037082/maven-build-for-grails-2-2-0-app-fails-with-jdk-1-7-could-not-find- आर्टिफैक्ट-कॉम –

2

मैं क्या in the source code देखने से, आप JVM संपत्ति सच करने के लिए stringchararrayaccessor.disabled सेट कर सकते हैं।

+0

यह grails 1.3.6 और जावा 7 के साथ काम करता है। इस वर्ग का इरादा प्रदर्शन से संबंधित प्रतीत होता है, इसलिए यह देखा जा सकता है कि कोई उल्लेखनीय प्रभाव है या नहीं। – Joseph

+0

मैं इस संपत्ति को कैसे सेट करूं? – Danijel

+0

मैंने जो भी वाक्यविन्यास मैंने कोशिश की है वह काम नहीं करती है, उदाहरण के लिए '-Dstringchararrayaccessor.disabled = true'। कोई उपाय? – Danijel

14

सेट JAVA_OPTS प्रणाली संपत्ति:
विंडोज: SET JAVA_OPTS=-Dstringchararrayaccessor.disabled=true
यूनिक्स: export JAVA_OPTS=-Dstringchararrayaccessor.disabled=true

+0

यह जावा 7 – Christian

+0

पर Grails 1.3.7 ऐप के लिए हमारे लिए काम करता है क्या आपका मतलब पर्यावरण चर सेट करना है? – eeadev

1

एक ही मुद्दे को देख जब CollabNet सबवर्सन एज सर्वर 4.x. शुरू कर लोगों के लिए फिक्स

JAVA_OPTS = -Dstringchararrayaccessor.disabled = true जोड़ने के लिए सही जगह का अनुमान लगाएं, सीएसवीएन स्टार्टअप स्क्रिप्ट नहीं बल्कि बल्कि tanukisoft wrapper conf।

उर्फ, संपादित $ csvn_home/डेटा/conf/csvn-wrapper.conf और जोड़ने के लिए,

wrapper.java.additional.x = -Dstringchararrayaccessor.disabled = सच

(जहां एक्स अनुक्रम में अगली बार उपयोग नहीं किया गया है)

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

  • कोई संबंधित समस्या नहीं^_^