Add java code gen