2013-10-27 4 views
7

私はプロジェクトをgrails 2.2から2.3に移行していますが、IDEA 12.1.6でtest-appを実行すると、このエラーGrails 2.2〜2.3 - forked test-appを実行中にエラーが発生しました:grailsビルドリスナークラスをロードできませんでした

| 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 

私BuildConfig.groovyは、次のようになります。

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" 
    } 
} 

何が悪いのでしょうか?

+0

フォークされたJVMなしでも試しましたか? – dmahapatro

+1

ええ、 "unforked"うまく動作しますが、私もフォークモードを使用したい – Thermech

+0

これに関するアップデートはありますか?解決策が見つかったのですか? – cdeszaq

答えて

8

現時点でIntelliJの新しいGrailsフォークテスト機能を利用するには、find the grails-rt.jar file under your IntelliJ installation directoryが必要で、それをgrailsプロジェクトlibディレクトリにコピーするか、クラスパス経由でgrailsアプリケーションで利用できるようにします。私の場合は

は、Mac OS Xで、Grailsの-rt.jarのファイルは、に位置していた:

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

と私は~/MyGrailsApp/libにこのファイルをコピーしました。

+0

ありがとう、私はこれをできるだけ早く試してみますあなたにフィードバックします;) – Thermech

+0

これは私にとってはうまくいったが、JIRAのチケットやintellijのバグレポートに載せておくべきようだ。 – anataliocs

+1

http://youtrack.jetbrains.com/issue/IDEA-115855、http://youtrack.jetbrains.com/issue/IDEA-115097 –

関連する問題