This is the exception when I run the 0.1.3 version of scalagen against the project hosted here : https://code.google.com/p/blockplus/source/browse/
I'd be happy to help you reproduce the issue or investigate further.
environment
java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)
mvn -V
Apache Maven 3.0.3 (r1075438; 2011-02-28 18:31:09+0100)
Maven home: C:\dev\tools\apache-maven-3.0.3\bin..
Java version: 1.7.0_09, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jre7
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
exception
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: scala.collection.parallel.package$CompositeThrowable: Multiple exceptions thrown during a parallel computation: (java.lang.ClassCastException: japa.parser.ast.stmt.IfStmt cannot be cast to japa.parser.ast.stmt.BlockStmt,List(com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:91), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.ForeachStmt.accept(ForeachStmt.java:58), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:117), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:104), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.BlockStmt.accept(BlockStmt.java:50), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:28), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:338), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.MethodDeclaration.accept(MethodDeclaration.java:97), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:142), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:71), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:54), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:47), japa.parser.ast.CompilationUnit.accept(CompilationUnit.java:87), com.mysema.scalagen.ControlStatements.transform(ControlStatements.scala:49), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:111), scala.collection.immutable.List.foldLeft(List.scala:45), com.mysema.scalagen.Converter.toScala(Converter.scala:74), com.mysema.scalagen.Converter.convertFile(Converter.scala:66), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach_quick(ParArray.scala:143), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach(ParArray.scala:136), scala.collection.parallel.ParIterableLike$Foreach.leaf(ParIterableLike.scala:896), scala.collection.parallel.Tasks$Task$$anonfun$tryLeaf$1.apply$mcV$sp(Tasks.scala:66), scala.collection.parallel.Tasks$Task$class.tryLeaf(Tasks.scala:68), scala.collection.parallel.ParIterableLike$Foreach.tryLeaf(ParIterableLike.scala:894), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.internal(Tasks.scala:179), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.internal(Tasks.scala:521), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.compute(Tasks.scala:164), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.compute(Tasks.scala:521), scala.collection.parallel.ThreadPoolTasks$TaskImpl$class.run(Tasks.scala:273), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.run(Tasks.scala:521), java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source), java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source), java.util.concurrent.FutureTask.run(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source))), (java.lang.ClassCastException: japa.parser.ast.stmt.ForeachStmt cannot be cast to japa.parser.ast.stmt.BlockStmt,List(com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:91), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.ForeachStmt.accept(ForeachStmt.java:58), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:117), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:104), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.BlockStmt.accept(BlockStmt.java:50), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:28), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:338), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.MethodDeclaration.accept(MethodDeclaration.java:97), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:142), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:71), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:54), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:47), japa.parser.ast.CompilationUnit.accept(CompilationUnit.java:87), com.mysema.scalagen.ControlStatements.transform(ControlStatements.scala:49), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:111), scala.collection.immutable.List.foldLeft(List.scala:45), com.mysema.scalagen.Converter.toScala(Converter.scala:74), com.mysema.scalagen.Converter.convertFile(Converter.scala:66), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach_quick(ParArray.scala:143), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach(ParArray.scala:136), scala.collection.parallel.ParIterableLike$Foreach.leaf(ParIterableLike.scala:896), scala.collection.parallel.Tasks$Task$$anonfun$tryLeaf$1.apply$mcV$sp(Tasks.scala:66), scala.collection.parallel.Tasks$Task$class.tryLeaf(Tasks.scala:68), scala.collection.parallel.ParIterableLike$Foreach.tryLeaf(ParIterableLike.scala:894), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.internal(Tasks.scala:179), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.internal(Tasks.scala:521), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.compute(Tasks.scala:164), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.compute(Tasks.scala:521), scala.collection.parallel.ThreadPoolTasks$TaskImpl$class.run(Tasks.scala:273), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.run(Tasks.scala:521), java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source), java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source), java.util.concurrent.FutureTask.run(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source))), (java.lang.ClassCastException: japa.parser.ast.stmt.ForeachStmt cannot be cast to japa.parser.ast.stmt.BlockStmt,List(com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:91), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.ForeachStmt.accept(ForeachStmt.java:58), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:117), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:104), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.BlockStmt.accept(BlockStmt.java:50), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:28), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:338), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.MethodDeclaration.accept(MethodDeclaration.java:97), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:142), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:71), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:54), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:47), japa.parser.ast.CompilationUnit.accept(CompilationUnit.java:87), com.mysema.scalagen.ControlStatements.transform(ControlStatements.scala:49), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:111), scala.collection.immutable.List.foldLeft(List.scala:45), com.mysema.scalagen.Converter.toScala(Converter.scala:74), com.mysema.scalagen.Converter.convertFile(Converter.scala:66), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach_quick(ParArray.scala:143), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach(ParArray.scala:136), scala.collection.parallel.ParIterableLike$Foreach.leaf(ParIterableLike.scala:896), scala.collection.parallel.Tasks$Task$$anonfun$tryLeaf$1.apply$mcV$sp(Tasks.scala:66), scala.collection.parallel.Tasks$Task$class.tryLeaf(Tasks.scala:68), scala.collection.parallel.ParIterableLike$Foreach.tryLeaf(ParIterableLike.scala:894), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.internal(Tasks.scala:179), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.internal(Tasks.scala:521), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.compute(Tasks.scala:164), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.compute(Tasks.scala:521), scala.collection.parallel.ThreadPoolTasks$TaskImpl$class.run(Tasks.scala:273), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.run(Tasks.scala:521), java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source), java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source), java.util.concurrent.FutureTask.run(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source))), (java.lang.ClassCastException: japa.parser.ast.stmt.IfStmt cannot be cast to japa.parser.ast.stmt.BlockStmt,List(com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:91), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.ForeachStmt.accept(ForeachStmt.java:58), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:117), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:104), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.BlockStmt.accept(BlockStmt.java:50), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:28), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:281), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:134), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.IfStmt.accept(IfStmt.java:57), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:28), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:281), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:134), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.IfStmt.accept(IfStmt.java:57), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:117), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:104), com.mysema.scalagen.ControlStatements.visit(ControlStatements.scala:25), japa.parser.ast.stmt.BlockStmt.accept(BlockStmt.java:50), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:28), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:338), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.MethodDeclaration.accept(MethodDeclaration.java:97), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:142), com.mysema.scalagen.ModifierVisitor.visit(ModifierVisitor.scala:25), japa.parser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:71), com.mysema.scalagen.ModifierVisitor.filter(ModifierVisitor.scala:41), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:54), com.mysema.scalagen.UnitTransformer$UnitTransformerBase.visit(UnitTransformer.scala:47), japa.parser.ast.CompilationUnit.accept(CompilationUnit.java:87), com.mysema.scalagen.ControlStatements.transform(ControlStatements.scala:49), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), com.mysema.scalagen.Converter$$anonfun$2.apply(Converter.scala:74), scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:111), scala.collection.immutable.List.foldLeft(List.scala:45), com.mysema.scalagen.Converter.toScala(Converter.scala:74), com.mysema.scalagen.Converter.convertFile(Converter.scala:66), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), com.mysema.scalagen.Converter$$anonfun$convert$2.apply(Converter.scala:61), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach_quick(ParArray.scala:143), scala.collection.parallel.mutable.ParArray$ParArrayIterator.foreach(ParArray.scala:136), scala.collection.parallel.ParIterableLike$Foreach.leaf(ParIterableLike.scala:896), scala.collection.parallel.Tasks$Task$$anonfun$tryLeaf$1.apply$mcV$sp(Tasks.scala:66), scala.collection.parallel.Tasks$Task$class.tryLeaf(Tasks.scala:68), scala.collection.parallel.ParIterableLike$Foreach.tryLeaf(ParIterableLike.scala:894), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.internal(Tasks.scala:179), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.internal(Tasks.scala:521), scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.compute(Tasks.scala:164), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.compute(Tasks.scala:521), scala.collection.parallel.ThreadPoolTasks$TaskImpl$class.run(Tasks.scala:273), scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.run(Tasks.scala:521), java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source), java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source), java.util.concurrent.FutureTask.run(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)))
at scala.collection.parallel.package$$anon$3.alongWith(package.scala:114)
at scala.collection.parallel.Tasks$Task$class.mergeThrowables(Tasks.scala:98)
at scala.collection.parallel.ParIterableLike$Foreach.mergeThrowables(ParIterableLike.scala:894)
at scala.collection.parallel.Tasks$Task$class.tryMerge(Tasks.scala:84)
at scala.collection.parallel.ParIterableLike$Foreach.tryMerge(ParIterableLike.scala:894)
at scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.internal(Tasks.scala:186)
at scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.internal(Tasks.scala:521)
at scala.collection.parallel.AdaptiveWorkStealingTasks$TaskImpl$class.compute(Tasks.scala:164)
at scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.compute(Tasks.scala:521)
at scala.collection.parallel.ThreadPoolTasks$TaskImpl$class.run(Tasks.scala:273)
at scala.collection.parallel.AdaptiveWorkStealingThreadPoolTasks$TaskImpl.run(Tasks.scala:521)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)