views:

79

answers:

2

Is there any tool which provides Java dynamic code generation and that also supports generics?

Javassist for example, is the kind of tool that I need, but it does not support generics.

I wrote a small lib which uses the Java 6 Compiler API, however as far as I know it depends on JDK. Is there a way to specify another compiler? Or to ship with my application only the parts that I need to invoke with the Java Compiler API?

A: 

If I recall correctly, it is sufficient to have tools.jar in the classpath in order to use the Java compiler at runtime.

meriton
Thanks, I'll run a few tests with this tomorrow and reply back.
halfwarp
+1  A: 

If you are comfortable with writing bytecode then ASM is quite a good library for that kind of thing. That will let you generate a class file on the fly without having to worry about the nitty-gritty of the classfile format. You can then use a classloader to dynamically load it into your application.

Richard Warburton