2014-11-17 4 views
0

저는 spring-data-neo4j와 Grails를 사용하고 있습니다. "grails test-app"를 실행할 때 다음과 같은 오류가 발생합니다.Grails Neo4j - POM이 종속성으로 포함되는 이유는 무엇입니까?

dependencies { 
    // specify dependencies here under either 'build', 'compile', 'runtime', 'test' or 'provided' scopes e.g. 
    // runtime 'mysql:mysql-connector-java:5.1.29' 
    // runtime 'org.postgresql:postgresql:9.3-1101-jdbc41' 
    test "org.grails:grails-datastore-test-support:jar:1.0-grails-2.4" 

    compile "org.springframework:spring-context:jar:4.0.6.RELEASE" 
    compile "org.springframework:spring-tx:jar:4.0.6.RELEASE" 
    compile "org.springframework.data:spring-data-neo4j:jar:3.2.1.RELEASE" 
    compile "org.hibernate:hibernate-validator:jar:5.1.3.Final" 
    compile "org.neo4j.app:neo4j-server:jar:2.1.5" 
    compile "org.neo4j.app:neo4j-server:jar:static-web:2.1.5"   
} 

오류는 다음과 같습니다 :

나는 다음과 같은 BuildConfig.groovy 종속성 섹션이 있습니다.

| Error Unable to obtain resource from /Users/john/.m2/repository/org/neo4j/neo4j/2.1.5/neo4j-2.1.5.pom: 
| Error java.util.zip.ZipException: error in opening zip file 
| Error  at java.util.zip.ZipFile.open(Native Method) 
| Error  at java.util.zip.ZipFile.<init>(ZipFile.java:220) 
| Error  at java.util.zip.ZipFile.<init>(ZipFile.java:150) 
| Error  at java.util.jar.JarFile.<init>(JarFile.java:166) 
| Error  at java.util.jar.JarFile.<init>(JarFile.java:130) 
| Error  at org.apache.tools.ant.AntClassLoader.getResourceURL(AntClassLoader.java:1006) 
| Error  at org.apache.tools.ant.AntClassLoader$ResourceEnumeration.findNextResource(AntClassLoader.java:149) 
| Error  at org.apache.tools.ant.AntClassLoader$ResourceEnumeration.nextElement(AntClassLoader.java:134) 
| Error  at org.apache.tools.ant.util.CollectionUtils$CompoundEnumeration.nextElement(CollectionUtils.java:241) 
| Error  at sun.misc.CompoundEnumeration.nextElement(CompoundEnumeration.java:61) 
| Error  at org.codehaus.groovy.runtime.m12n.ExtensionModuleScanner.scanClasspathModules(ExtensionModuleScanner.java:52) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport$ExtensionMethodCache.getExtensionMethods(StaticTypeCheckingSupport.java:1847) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.findDGMMethodsForClassNode(StaticTypeCheckingSupport.java:180) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.findDGMMethodsForClassNode(StaticTypeCheckingSupport.java:166) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.findDGMMethodsByNameAndArguments(StaticTypeCheckingSupport.java:880) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethod(StaticTypeCheckingVisitor.java:3623) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.findMethodOrFail(StaticTypeCheckingVisitor.java:3384) 
| Error  at org.codehaus.groovy.transform.sc.StaticCompilationVisitor.findMethodOrFail(StaticCompilationVisitor.java:299) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.getResultType(StaticTypeCheckingVisitor.java:3300) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitBinaryExpression(StaticTypeCheckingVisitor.java:514) 
| Error  at org.codehaus.groovy.ast.expr.BinaryExpression.visit(BinaryExpression.java:49) 
| Error  at org.codehaus.groovy.ast.CodeVisitorSupport.visitBooleanExpression(CodeVisitorSupport.java:166) 
| Error  at org.codehaus.groovy.ast.expr.BooleanExpression.visit(BooleanExpression.java:40) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitIfElse(StaticTypeCheckingVisitor.java:2955) 
| Error  at org.codehaus.groovy.ast.stmt.IfStatement.visit(IfStatement.java:41) 
| Error  at org.codehaus.groovy.ast.CodeVisitorSupport.visitBlockStatement(CodeVisitorSupport.java:35) 
| Error  at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitBlockStatement(ClassCodeVisitorSupport.java:163) 
| Error  at org.codehaus.groovy.ast.stmt.BlockStatement.visit(BlockStatement.java:69) 
| Error  at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClassCodeContainer(ClassCodeVisitorSupport.java:101) 
| Error  at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitConstructorOrMethod(ClassCodeVisitorSupport.java:112) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitConstructorOrMethod(StaticTypeCheckingVisitor.java:1622) 
| Error  at org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitMethod(ClassCodeVisitorSupport.java:123) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.startMethodInference(StaticTypeCheckingVisitor.java:1941) 
| Error  at org.codehaus.groovy.transform.stc.StaticTypeCheckingVisitor.visitMethod(StaticTypeCheckingVisitor.java:1900) 
| Error  at org.codehaus.groovy.transform.sc.StaticCompilationVisitor.visitMethod(StaticCompilationVisitor.java:144) 
| Error  at org.codehaus.groovy.transform.sc.StaticCompileTransformation.visit(StaticCompileTransformation.java:74) 
| Error  at org.codehaus.groovy.transform.ASTTransformationVisitor.visitClass(ASTTransformationVisitor.java:132) 
| Error  at org.codehaus.groovy.transform.ASTTransformationVisitor$2.call(ASTTransformationVisitor.java:176) 
| Error  at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1047) 
| Error  at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:583) 
| Error  at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:561) 
| Error  at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:538) 
| Error  at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:517) 
| Error  at org.codehaus.groovy.tools.FileSystemCompiler.compile(FileSystemCompiler.java:59) 
| Error  at org.codehaus.groovy.tools.FileSystemCompiler.doCompilation(FileSystemCompiler.java:215) 
| Error  at org.codehaus.groovy.ant.Groovyc.runCompiler(Groovyc.java:1161) 
| Error  at org.codehaus.groovy.ant.Groovyc.compile(Groovyc.java:1212) 
| Error  at org.codehaus.groovy.grails.compiler.Grailsc.compile(Grailsc.java:78) 
| Error  at org.codehaus.groovy.ant.Groovyc.execute(Groovyc.java:827) 
| Error  at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291) 
| Error  at sun.reflect.GeneratedMethodAccessor62.invoke(Unknown Source) 
| Error  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
| Error  at java.lang.reflect.Method.invoke(Method.java:483) 
| Error  at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1270) 
| Error  at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
| Error  at groovy.util.AntBuilder.performTask(AntBuilder.java:319) 
| Error  at groovy.util.AntBuilder.nodeCompleted(AntBuilder.java:264) 
| Error  at groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:147) 
| Error  at groovy.util.AntBuilder.doInvokeMethod(AntBuilder.java:203) 
| Error  at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:64) 
| Error  at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:907) 
| Error  at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:884) 
| Error  at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:164) 
| Error  at org.codehaus.groovy.grails.test.runner.GrailsProjectTestCompiler.compileTests(GrailsProjectTestCompiler.groovy:74) 
| Error  at org.codehaus.groovy.grails.test.runner.GrailsProjectTestRunner.processTests(GrailsProjectTestRunner.groovy:392) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
| Error  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
| Error  at java.lang.reflect.Method.invoke(Method.java:483) 
| Error  at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1270) 
| Error  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
| Error  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1207) 
| Error  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1152) 
| Error  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016) 
| Error  at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66) 
| Error  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:49) 
| Error  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133) 
| Error  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141) 
| Error  at org.codehaus.groovy.grails.test.runner.GrailsProjectTestRunner$_runAllTests_closure7.doCall(GrailsProjectTestRunner.groovy:313) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
| Error  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
| Error  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
| Error  at java.lang.reflect.Method.invoke(Method.java:483) 
| Error  at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInterceptor.java:1270) 
| Error  at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90) 
| Error  at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:324) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1207) 
| Error  at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1110) 
| Error  at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1016) 
| Error  at groovy.lang.Closure.call(Closure.java:423) 
| Error  at org.codehaus.groovy.runtime.DefaultGroovyMethods.callClosureForMapEntry(DefaultGroovyMethods.java:4271) 
| Error  at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1408) 
| Error  at org.codehaus.groovy.runtime.dgm$151.invoke(Unknown Source) 
| Error  at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:271) 
| Error  at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53) 
| Error  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45) 
| Error  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) 
| Error  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) 
| Error  at org.codehaus.groovy.grails.test.runner.GrailsProjectTestRunner.runAllTests(GrailsProjectTestRunner.groovy:299) 
| Error  at org.codehaus.groovy.grails.test.runner.GrailsProjectTestRunner.runAllTests(GrailsProjectTestRunner.groovy:214) 
| Error  at org.codehaus.groovy.grails.test.runner.GrailsProjectTestRunner.runAllTests(GrailsProjectTestRunner.groovy) 
| Error  at org.codehaus.groovy.grails.test.runner.GrailsProjectTestRunner$runAllTests$0.call(Unknown Source) 
| Error  at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:45) 
| Error  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) 
| Error  at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) 
| Error  at org.codehaus.groovy.grails.cli.fork.testing.ForkedGrailsTestRunner.runInstance(ForkedGrailsTestRunner.groovy:128) 
| Error  at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProjectClassExecutor.run(ForkedGrailsProjectClassExecutor.groovy:74) 
| Error  at org.codehaus.groovy.grails.cli.fork.testing.ForkedGrailsTestRunner.main(ForkedGrailsTestRunner.groovy:75) 

편집 :

디렉토리 /Users/john/.m2/repository/org/neo4j/neo4j/2.1.5의 내용은 다음과 같습니다

-rw-r--r-- 1 john staff 193 18 Nov 08:45 _remote.repositories 
-rw-r--r-- 1 john staff 23962 18 Nov 08:45 neo4j-2.1.5.jar 
-rw-r--r-- 1 john staff  40 18 Nov 08:45 neo4j-2.1.5.jar.sha1 
-rw-r--r-- 1 john staff 11387 18 Nov 08:45 neo4j-2.1.5.pom 
-rw-r--r-- 1 john staff  40 18 Nov 08:45 neo4j-2.1.5.pom.sha1 

멀어져 편집 :

"grails run-app"를 실행할 때이 오류가 발생하지 않습니다.

멀어져 편집 :

이 Neo4j 서버 종속성로서 POM 파일 당기는 사실과 관련이있을 것으로 보인다. 그런 다음 Grails는이 파일의 압축을 풀려고 시도하지만 POM 파일이므로 오류가 발생합니다. 내 ~/.m2 디렉토리에 다운로드 neo4j - 서버 2.1.5.pom에서 <type>pom</type> 라인을 삭제하면

<dependency> 
<groupId>org.neo4j</groupId> 
<artifactId>neo4j</artifactId> 
<version>${project.version}</version> 
<type>pom</type> 
</dependency> 

, 나는 더 얻을 : neo4j-server-2.1.5.pom

는 아래의 의존성이 오류.

<type>pom</type>이 왜 포함되어 있습니까?

+0

'compile (group : "org.neo4j.app", 이름 : "neo4j-server", 버전 : "2.1.5", 분류 자 ​​: "static-web")'을 사용할 때 차이가 있습니까? –

+0

아니요 버전 2.1.4로 변경하면 차이가 없습니다. 디렉토리 내용이 질문에 추가되었습니다. – John

+0

@StefanArmbruster,이 문제는 POM 파일이 neo4j-server의 종속성으로 포함 된 결과 인 것으로 보입니다. 이것이 의도적인지 여부는 확실하지 않습니다. 문제의 맨 아래에서 제 편집을 살펴 보시겠습니까? – John

답변

0

네트워크를 처음 다운로드 할 때 (예 : neo4j-2.1.5.jar보기) 훨씬 더 커야하는 손상된 DNS 서버 (예 : 호텔/핫스팟)가있는 것 같습니다.

해당 maven 디렉토리를 제거하고 사운드 네트워크 연결을 다시 시도하십시오.

+0

감사합니다 @ 마이클,하지만 불행히도 나는 단지 같은 문제가 발생합니다. Grails가 다운로드하는 데이터 나 Grails가 그것을 다운로드하는 방법에 문제가 있습니다. 테스트를 위해 서버가 필요 없기 때문에 환경을 테스트 할 때 해결 방법을 포함시키지 않아도됩니다. – John

+0

안녕하세요 @Michael Hunger, MavenCentral의 jar 파일은 여기에 있으며 24kB입니다 : http://mvnrepository.com/artifact/org.neo4j/neo4j/2.1.6 (v2.1.5와 마찬가지로). 아마도 레포에 저장된 데이터에 문제가 있습니까? – John

+0

이 문제는 neo4j-server-2.1.5.pom 파일에 포함 된 POM 파일의 결과 인 것으로 보이며 의도적으로 설계되었는지 여부는 알 수 없습니다. 질문의 맨 아래에서 제 편집을 살펴 보시겠습니까? – John

1

음, 필자는 Michael이 제안한 해결책을 사용해 보았습니다. 다운로드하는 대상에 문제가 있습니다.

// BuildConfig.groovy 
if (Environment.current != Environment.TEST){ 
    compile "org.neo4j.app:neo4j-server:jar:2.1.5" 
    compile(group:"org.neo4j.app", name:"neo4j-server", version:"2.1.5", classifier:"static-web") 
} 

이 진짜 문제 만 해결 (그리고 나는 진짜 문제가 실제로 무엇인지 모르는) : 테스트 할 때이 솔루션은 서버를 포함하지 않도록했다.

+0

이 또한 저에게 효과적입니다 ... 테스트 중에이 압축 해제 예외가 왜 나왔는지 궁금해했습니다. –

관련 문제