Is there a description of what you are working on that has any more details than: http://wiki.apache.org/general/SummerOfCode2006? I couldn't find anything else.
Hm... for some reason the application is not linked at http://code.google.com/soc/asf/about.html ...but it does not provide really much more information than a roadmap with dates and information about Peter. Everything else you should be aware of ;-) Plan is to at least port/implement a javac and jikes implementation for jci and then get a maven plugin started based on the maven compiler plugin code.
Is there some code we can see for these?
Just have a browse here: http://svn.apache.org/viewvc/jakarta/commons/sandbox/jci/trunk/ ...especially the maven plugin. I have some work lined up that will include: o examples and documentation o configuation management o fixing an eclipse compiler issue o class dependency awareness ...and at some stage adding jsr199 support. Brett, is there a way to exclude modules based on jdk versions? The jsr199 implementation will only compile with mustang. We probably will have to use profiles for that, right? Can you exclude whole modules based on that?
I'd generally recommend making small, incremental changes through a series of small patches. That way you can get your work reviewed (and applied!) sooner, and if anything needs changes or it's going in the wrong direction, there's less impact.
yepp +1 ...at the moment I've asked to get a patch at least every week. But more often would be even better.
> Implementation of support file-based compilers in jci is my main task now. > To example > my approach I implicated support of javac (currently call only). I used > javasist > library to replace file-working classes with my proxis. It's seems this > approch > would work fine for every java-based java compiler. Yep, I know that > javasist is > pretty fat and slow, but it's only technological preview, and I hope > implication > would become more satisfactory in future. And of course, unavailability of > fork-call, remain main problem of this approach.
Actually we would also need to verify that it is really release under MPL version 1.1 ...otherwise we would have licensing problem. But I suggest to use http://vafer.org/projects/dependency/ anyway. It should be good enough for at least how we use javassist at the moment and we will have that dependency to "dependency" ;-) anyway.
While I think I understand what you are doing here, the original assumption was to use the code in Maven as a starting point. Was there a reason not to do this? Javac is completely implemented there.
While I agree starting from the maven source code would have been better, the maven implementation is probably not good enough as jci features in memory compilation ...which is not directly supported by javac out-of-the-box. I though we had to use a very ugly work-around but Peter found a very smart way around that. Really good! ...forking will become interesting - probably for all compilers though.
> Support of maven is my second goal. It's pretty simple, and I already > developed > main part of maven plugin. But problem of abstract configuration of > jci-compilers > isn't steal solved. As you know, now every jci-compiler has own > configuration > class, in the other hand we have only one compiler-configuration format in > plexys. So, you can see what shall we aim to.
That should be easy to implement through a factory pattern.
I'm just seeing now that the original description would have been misleading - it's not desirable to write a new compiler plugin, but instead to integrate commons-jci into the existing one (instead of the plexus compiler).
Well, maybe my fault. I thought starting of from the maven-compiler-plugin code but building it in jci as maven-jci-plugin. Once stable it should be an easy replacement and we can move the code over to the maven-compiler-plugin codebase. WDYT?
Looking forward to hearing more about your work!
Same here! :) cheers -- Torsten --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]