2013-10-27 15 views
7

Sto migrando il mio progetto da Grails 2.2 a 2.3 e quando eseguo test-app (su IDEA 12.1.6), ho ottenuto questo erroreGrails 2.2 a 2.3 - Errore nell'esecuzione di app di prova biforcuta: Impossibile caricare grails classe listener di build

| Error Error running forked test-app: Could not load grails build listener class 
java.lang.RuntimeException: Could not load grails build listener class 
    at org.codehaus.groovy.grails.cli.support.GrailsBuildEventListener.addGrailsBuildListener(GrailsBuildEventListener.java:258) 
    at org.codehaus.groovy.grails.cli.support.GrailsBuildEventListener.loadGrailsBuildListeners(GrailsBuildEventListener.java:106) 
    at org.codehaus.groovy.grails.cli.support.GrailsBuildEventListener.initialize(GrailsBuildEventListener.java:73) 
    at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProjectClassExecutor.createEventListener(ForkedGrailsProjectClassExecutor.groovy:102) 
    at org.codehaus.groovy.grails.cli.fork.testing.ForkedGrailsTestRunner.createInstance(ForkedGrailsTestRunner.groovy:93) 
    at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProjectClassExecutor.initializeProjectInstance(ForkedGrailsProjectClassExecutor.groovy:85) 
    at org.codehaus.groovy.grails.cli.fork.ForkedGrailsProjectClassExecutor.run(ForkedGrailsProjectClassExecutor.groovy:72) 
    at org.codehaus.groovy.grails.cli.fork.testing.ForkedGrailsTestRunner.main(ForkedGrailsTestRunner.groovy:75) 
Caused by: java.lang.ClassNotFoundException: org.jetbrains.groovy.grails.rt.GrailsIdeaTestListener 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
    at groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:648) 
    at groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:758) 
    at groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:746) 
    at org.codehaus.groovy.grails.cli.support.GrailsBuildEventListener.addGrailsBuildListener(GrailsBuildEventListener.java:255) 
    ... 7 more 
| Error Error running forked test-app: Could not load grails build listener class 
| Error Forked Grails VM exited with error 

mio BuildConfig.groovy simile a questa:

grails.servlet.version = "3.0" 
grails.project.class.dir = "target/classes" 
grails.project.test.class.dir = "target/test-classes" 
grails.project.test.reports.dir = "target/test-reports" 
grails.project.work.dir = "target/work" 
grails.project.target.level = 1.6 
grails.project.source.level = 1.6 

grails.project.fork = [ 
    test: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, daemon:true], 
    run: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false], 
    war: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false], 
    console: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256] 
] 

grails.project.dependency.resolver = "maven" // or ivy 

grails.project.dependency.resolution = { 
    // inherit Grails' default dependencies 
    inherits("global") { 
     // specify dependency exclusions here; for example, uncomment this to disable ehcache: 
     // excludes 'ehcache' 
    } 
    log "error" 
    checksums true 
    legacyResolve false 

    repositories { 
     inherits true // Whether to inherit repository definitions from plugins 

     grailsPlugins() 
     grailsHome() 
     mavenLocal() 
     grailsCentral() 
     mavenCentral() 
    } 

    dependencies { 
     runtime 'mysql:mysql-connector-java:5.1.24' 
    } 

    plugins { 
     build ":tomcat:7.0.42" 

     compile ":scaffolding:2.0.1" 
     compile ':cache:1.1.1' 

     runtime ":hibernate:3.6.10.2" // or ":hibernate4:4.1.11.2" 
     runtime ":jquery:1.10.2" 
     runtime ":resources:1.2.1" 
    } 
} 

Cosa c'è di sbagliato?

+0

Hai provato anche senza JVM a forcella? – dmahapatro

+1

Sì "unforked" funziona bene, ma voglio anche usare la modalità a forcella – Thermech

+0

Qualche aggiornamento su questo? È mai stata trovata una soluzione? – cdeszaq

risposta

8

Al fine di sfruttare la nuova funzionalità di test della forcella Grails in IntelliJ al momento, è necessario find the grails-rt.jar file under your IntelliJ installation directory e copiarlo nella directory lib del progetto grails, oppure renderlo disponibile all'applicazione Grails tramite il percorso classe.

Nel mio caso, su Mac OS X, il file graal-rt.jar era situata in:

/Applications/IntelliJ\ IDEA\ 13.app/plugins/Grails/lib/grails-rt.jar 

e ho copiato questo file ~/MyGrailsApp/lib.

+0

Grazie, ci provo il prima possibile e ti darò un feedback;) – Thermech

+0

Questo ha funzionato per me ma sembra che dovrebbe essere inserito in un ticket JIRA o nella segnalazione di bug per intellij. – anataliocs

+1

Sembra che ci siano almeno un paio di biglietti: http://youtrack.jetbrains.com/issue/IDEA-115855 e http://youtrack.jetbrains.com/issue/IDEA-115097 –

Problemi correlati