Weld 2.0.0.Alpha2 has just been released. Weld 2 is an implementation of JSR-346 (CDI 1.1). The highlights of the new version are:

  • Significant improvement of memory usage. Our benchmarks show that the memory footprint of Weld 2 has been reduced by 50 - 80% compared to Weld 1. This has been achieved mostly by rewriting the metadata layer and separating metadata needed for Weld bootstrap from metadata used at runtime.
  • Concurrent bean deployer and bean validator. These two components speed up Weld bootstrap by leveraging capabilities of multi-core CPUs. The bootstrap time improvement is most significant in large deployments. We plan on reducing bootstrap time even more in future releases.
  • Stuart removed the Javassist dependency entirely and switched to jboss-classfilewriter
  • Around 30 bug fixes, mostly picked from the 1.x branches (most of the credit here goes to Stuart, Ales and Marko)

Furthermore, a new version of the CDI 1.1 TCK has been released. The TCK currently provides a solid coverage (90.60%) of the JSR-346 Early Draft

[ Distribution (Weld, CDI TCK) ] [ JBoss AS 7.1.1.Final with Weld 2.0.0.Alpha2 ] [Release notes (Weld, CDI TCK)] [ CDI 1.1 EDR1 Javadoc ]

26. Apr 2012, 22:27 CET | Link

So does Weld 2.0 have to pass the CDI 1.0 TCK as well as the 1.1 TCK?

26. Apr 2012, 22:44 CET | Link

In general yes, however there are several changes in behavior in the Early Draft of CDI 1.1 which make some of the CDI 1.0 TCK tests no longer valid. With these tests excluded, Weld 2 passes CDI 1.0 TCK.

27. Apr 2012, 00:18 CET | Link

GAE does not support multithreading

27. Apr 2012, 08:47 CET | Link
I'm getting an exception on my linux server when using this release:

        at java.util.concurrent.ThreadPoolExecutor.<init>(
        at java.util.concurrent.ThreadPoolExecutor.<init>(
        at java.util.concurrent.Executors.newFixedThreadPool(
        at org.jboss.weld.bootstrap.ContainerLifecycleEventPreloader.<init>(
        at org.jboss.weld.bootstrap.ContainerLifecycleEventPreloader.<init>(
        at org.jboss.weld.bootstrap.WeldBootstrap.getImplementationServices(
        at org.jboss.weld.bootstrap.WeldBootstrap.startContainer(
        at org.jboss.weld.bootstrap.api.helpers.ForwardingBootstrap.startContainer(

This doesn't happen on my windows machine. I think it's related to the number of CPUs as I only have 1 cpu on my linux machine.
27. Apr 2012, 09:45 CET | Link

Seems that a bug has slipped through our release process. In the meantime, use the workaround found at WELD-1119 on your linux machine.

29. Nov 2014, 11:08 CET | Link

I do not even know how I ended up here, but I thought this post was great. I don't know who you are but certainly you are going to a famous blogger if you aren't already ;) Cheers! Millionaires Brain