added freemarker 2.3.16 to hibernate-tools per their website
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<!-- Latest 2.3.x (not 2.4.x), at least 2.3.16 -->
<version>2.3.16</version>
</dependency>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<includes>
<include>antlr:*</include>
<include>org.hibernate:*</include>
<include>dom4j:*</include>
<include>freemarker:*</include>
</includes>
</artifactSet>
</configuration>
</execution>
</executions>
</plugin>
...built hibernate-tools and see:
[INFO] Excluding org.freemarker:freemarker:jar:2.3.16 from the shaded
jar.
[INFO] Replacing original artifact with shaded artifact.
then launch forge and get:
Exception in thread "Thread-0"
com.google.common.collect.ComputationException:
java.lang.IllegalAccessError: tried to access class
freemarker.ext.beans.MethodMap from class freemarker.ext.beans.MethodMap
$ClassString
at
com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:218)
at
com.google.common.collect.ComputingConcurrentHashMap.apply(ComputingConcurrentHashMap.java:100)
at com.google.common.collect.MapMaker
$ComputingMapAdapter.get(MapMaker.java:515)
at
org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:183)
at org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:96)
at
org.jboss.weld.bootstrap.BeanDeployer.addClasses(BeanDeployer.java:133)
at
org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:192)
at
org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:364)
at org.jboss.weld.environment.se.Weld.initialize(Weld.java:87)
at org.jboss.seam.forge.shell.Bootstrap$2.run(Bootstrap.java:89)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.IllegalAccessError: tried to access class
freemarker.ext.beans.MethodMap from class freemarker.ext.beans.MethodMap
$ClassString
at java.lang.Class.getDeclaringClass(Native Method)
at java.lang.Class.getEnclosingClass(Class.java:1085)
at java.lang.Class.getSimpleBinaryName(Class.java:1220)
at java.lang.Class.isMemberClass(Class.java:1210)
at
org.jboss.weld.util.reflection.Reflections.getNesting(Reflections.java:158)
at
org.jboss.weld.introspector.jlr.WeldConstructorImpl.<init>(WeldConstructorImpl.java:107)
at
org.jboss.weld.introspector.jlr.WeldConstructorImpl.of(WeldConstructorImpl.java:70)
at
org.jboss.weld.introspector.jlr.WeldClassImpl.<init>(WeldClassImpl.java:228)
at
org.jboss.weld.introspector.jlr.WeldClassImpl.of(WeldClassImpl.java:124)
at org.jboss.weld.resources.ClassTransformer
$TransformTypeToWeldClass.apply(ClassTransformer.java:54)
at org.jboss.weld.resources.ClassTransformer
$TransformTypeToWeldClass.apply(ClassTransformer.java:42)
at
com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:206)
... 10 more
...anyone ever see this? know how to fix it?
Exception in thread "Thread-0"
com.google.common.collect.ComputationException:
java.lang.IllegalAccessError: tried to access class
freemarker.ext.beans.MethodMap from class freemarker.ext.beans.MethodMap
$ClassString
at
com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:218)
at
com.google.common.collect.ComputingConcurrentHashMap.apply(ComputingConcurrentHashMap.java:100)
at com.google.common.collect.MapMaker
$ComputingMapAdapter.get(MapMaker.java:515)