Plugins grails maven依赖项解析

Plugins grails maven依赖项解析,plugins,grails,groovy,dependency-management,xerces,Plugins,Grails,Groovy,Dependency Management,Xerces,我有一个grails插件,其中包含以下BuildCofnig.groovy grails.project.class.dir = "target/classes" grails.project.test.class.dir = "target/test-classes" grails.project.test.reports.dir = "target/test-reports" //grails.project.war.file = "target/${appName}-${appVersio

我有一个grails插件,其中包含以下BuildCofnig.groovy

grails.project.class.dir = "target/classes"
grails.project.test.class.dir = "target/test-classes"
grails.project.test.reports.dir = "target/test-reports"
//grails.project.war.file = "target/${appName}-${appVersion}.war"
grails.project.dependency.resolution = {
    // inherit Grails' default dependencies
    inherits("global") {

    }

    log "warn" // log level of Ivy resolver, either 'error', 'warn', 'info', 'debug' or 'verbose'
    repositories {
        grailsPlugins()
        grailsHome()
        mavenCentral()
        mavenLocal()
        mavenRepo "http://repository.codehaus.org"
        flatDir name: 'lib', dirs: "${userHome}/libs"
    }

    dependencies {

        runtime('mysql:mysql-connector-java:5.1.9')

        compile('net.sf.jasperreports:jasperreports:4.0.1') {
            excludes 'antlr', 'commons-beanutils', 'commons-collections', 'commons-logging',
                     'ant', 'mondrian', 'commons-javaflow', 'barbecue', 'xml-apis-ext', 'xml-apis', 'xalan', 'groovy', 'groovy-all', 'hibernate', 'saaj-api', 'servlet-api',
                     'xercesImpl', 'xmlParserAPIs', 'spring-core', 'bsh', 'spring-beans', 'jaxen', 'barcode4j', 'batik-svg-dom', 'batik-xml', 'batik-awt-util', 'batik-dom',
                     'batik-css', 'batik-gvt', 'batik-script', 'batik-svggen', 'batik-util', 'batik-bridge', 'persistence-api', 'jdtcore', 'bcmail-jdk14', 'bcprov-jdk14', 'bctsp-jdk14'
        }
        compile('vomsws:VomsWsClient:1.0')
        compile('com.jaxfront:jaxfront-core:1.0',
                'com.jaxfront:jaxfront-html:1.0')
        compile('freemarker:freemarker:2.3.8')
        compile('org.apache.poi:poi:3.6')
        compile('commons-net:commons-net:3.0')
        compile('commons-httpclient:commons-httpclient:3.1')
    }
}
我可以成功打包插件。然而,当我在一个新的Grails项目中导入这个插件并尝试运行应用程序时。我得到以下异常堆栈tace:

  [groovyc] Compiling 452 source files to C:\Users\Alam Sher\.grails\1.3.2\projects\witribe-test-gui\plugin-classes
: java.lang.NoClassDefFoundError: org/apache/xerces/xni/parser/XMLParseException
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:116)
    at _GrailsCompile_groovy$_run_closure4_closure10.doCall(_GrailsCompile_groovy:118)
    at _GrailsCompile_groovy$_run_closure4_closure10.doCall(_GrailsCompile_groovy)
    at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy:282)
    at _GrailsSettings_groovy$_run_closure10.call(_GrailsSettings_groovy)
    at _GrailsCompile_groovy$_run_closure4.doCall(_GrailsCompile_groovy:105)
    at _GrailsCompile_groovy$_run_closure3.doCall(_GrailsCompile_groovy:68)
    at _GrailsPackage_groovy$_run_closure2_closure9.doCall(_GrailsPackage_groovy:84)
    at _GrailsPackage_groovy$_run_closure2_closure9.doCall(_GrailsPackage_groovy)
    at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy:282)
    at _GrailsSettings_groovy$_run_closure10.call(_GrailsSettings_groovy)
    at _GrailsPackage_groovy$_run_closure2.doCall(_GrailsPackage_groovy:83)
    at RunApp$_run_closure1.doCall(RunApp.groovy:28)
    at gant.Gant$_dispatch_closure5.doCall(Gant.groovy:381)
    at gant.Gant$_dispatch_closure7.doCall(Gant.groovy:415)
    at gant.Gant$_dispatch_closure7.doCall(Gant.groovy)
    at gant.Gant.withBuildListeners(Gant.groovy:427)
    at gant.Gant.this$2$withBuildListeners(Gant.groovy)
    at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
    at gant.Gant.dispatch(Gant.groovy:415)
    at gant.Gant.this$2$dispatch(Gant.groovy)
    at gant.Gant.invokeMethod(Gant.groovy)
    at gant.Gant.executeTargets(Gant.groovy:590)
    at gant.Gant.executeTargets(Gant.groovy:589)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:115)
Caused by: java.lang.NoClassDefFoundError: org/apache/xerces/xni/parser/XMLParseException
    at java.lang.Class.getDeclaredFields0(Native Method)
    at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
    at java.lang.Class.getDeclaredFields(Class.java:1743)
    at org.codehaus.groovy.vmplugin.v5.Java5.configureClassNode(Java5.java:313)
    at org.codehaus.groovy.control.ResolveVisitor.checkCyclicInheritence(ResolveVisitor.java:1269)
    at org.codehaus.groovy.control.ResolveVisitor.visitClass(ResolveVisitor.java:1246)
    at org.codehaus.groovy.control.ResolveVisitor.startResolving(ResolveVisitor.java:148)
    at org.codehaus.groovy.tools.javac.JavaAwareCompilationUnit$1.call(JavaAwareCompilationUnit.java:63)
    at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:931)
    at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:509)
    at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:487)
    at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:464)
    at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:448)
    at org.codehaus.groovy.tools.FileSystemCompiler.compile(FileSystemCompiler.java:57)
    at org.codehaus.groovy.tools.FileSystemCompiler.doCompilation(FileSystemCompiler.java:170)
    at org.codehaus.groovy.ant.Groovyc.compile(Groovyc.java:830)
    at org.codehaus.groovy.ant.Groovyc.execute(Groovyc.java:552)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    ... 24 more
Caused by: java.lang.ClassNotFoundException: org.apache.xerces.xni.parser.XMLParseException
    at org.codehaus.groovy.tools.RootLoader.findClass(RootLoader.java:156)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at org.codehaus.groovy.tools.RootLoader.loadClass(RootLoader.java:128)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    ... 43 more
--- Nested Exception ---
java.lang.NoClassDefFoundError: org/apache/xerces/xni/parser/XMLParseException
    at java.lang.Class.getDeclaredFields0(Native Method)
    at java.lang.Class.privateGetDeclaredFields(Class.java:2291)
    at java.lang.Class.getDeclaredFields(Class.java:1743)
    at org.codehaus.groovy.vmplugin.v5.Java5.configureClassNode(Java5.java:313)
    at org.codehaus.groovy.control.ResolveVisitor.checkCyclicInheritence(ResolveVisitor.java:1269)
    at org.codehaus.groovy.control.ResolveVisitor.visitClass(ResolveVisitor.java:1246)
    at org.codehaus.groovy.control.ResolveVisitor.startResolving(ResolveVisitor.java:148)
    at org.codehaus.groovy.tools.javac.JavaAwareCompilationUnit$1.call(JavaAwareCompilationUnit.java:63)
    at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:931)
    at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:509)
    at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:487)
    at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:464)
    at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:448)
    at org.codehaus.groovy.tools.FileSystemCompiler.compile(FileSystemCompiler.java:57)
    at org.codehaus.groovy.tools.FileSystemCompiler.doCompilation(FileSystemCompiler.java:170)
    at org.codehaus.groovy.ant.Groovyc.compile(Groovyc.java:830)
    at org.codehaus.groovy.ant.Groovyc.execute(Groovyc.java:552)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
    at _GrailsCompile_groovy$_run_closure4_closure10.doCall(_GrailsCompile_groovy:118)
    at _GrailsCompile_groovy$_run_closure4_closure10.doCall(_GrailsCompile_groovy)
    at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy:282)
    at _GrailsSettings_groovy$_run_closure10.call(_GrailsSettings_groovy)
    at _GrailsCompile_groovy$_run_closure4.doCall(_GrailsCompile_groovy:105)
    at _GrailsCompile_groovy$_run_closure3.doCall(_GrailsCompile_groovy:68)
    at _GrailsPackage_groovy$_run_closure2_closure9.doCall(_GrailsPackage_groovy:84)
    at _GrailsPackage_groovy$_run_closure2_closure9.doCall(_GrailsPackage_groovy)
    at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy:282)
    at _GrailsSettings_groovy$_run_closure10.call(_GrailsSettings_groovy)
    at _GrailsPackage_groovy$_run_closure2.doCall(_GrailsPackage_groovy:83)
    at RunApp$_run_closure1.doCall(RunApp.groovy:28)
    at gant.Gant$_dispatch_closure5.doCall(Gant.groovy:381)
    at gant.Gant$_dispatch_closure7.doCall(Gant.groovy:415)
    at gant.Gant$_dispatch_closure7.doCall(Gant.groovy)
    at gant.Gant.withBuildListeners(Gant.groovy:427)
    at gant.Gant.this$2$withBuildListeners(Gant.groovy)
    at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source)
    at gant.Gant.dispatch(Gant.groovy:415)
    at gant.Gant.this$2$dispatch(Gant.groovy)
    at gant.Gant.invokeMethod(Gant.groovy)
    at gant.Gant.executeTargets(Gant.groovy:590)
    at gant.Gant.executeTargets(Gant.groovy:589)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:115)
Caused by: java.lang.ClassNotFoundException: org.apache.xerces.xni.parser.XMLParseException
    at org.codehaus.groovy.tools.RootLoader.findClass(RootLoader.java:156)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at org.codehaus.groovy.tools.RootLoader.loadClass(RootLoader.java:128)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    ... 43 more
Compilation error: java.lang.NoClassDefFoundError: org/apache/xerces/xni/parser/XMLParseException
有点迷路这里有什么问题。。坦率地说,我对使用Maven进行依赖关系管理还不熟悉,也不知道会发生什么


欢迎您的建议。

当我看到您设置的排除次数时,其中一个肯定应该与未找到的类相对应。。。。寻找好的;-)

实际上没有。我从排除中删除了xercesImpl和xmlParserAPI,并且仍然必须在新的grails项目中定义编译时依赖项,该项目导入了这个插件才能正常工作。但我不明白是什么导致了这种情况,在grails项目中有如此明确的xerces编译时依赖关系是很难看的。它后来起作用了,我忘了接受你的答案。现在就做:)