location of generated source
Where do most maven developers place generated files (ex: xdoclet)? I've been developing a maven project for the past 6 months and have been dumping all generated files into 'target' to avoid saving into CVS. Now, with over 200 generated classes, and little change, I'd like to avoid having xdoclet run EACH java:compile. So, here are my two options as I see them: 1. create a separate subproject, and have the generated interfaces saved in src/java to appease maven. Add a task into maven.xml to regenerate the classes only when needed. 2. save the files in src/java-gen (or something like that), and modify maven.xml to add that location to the maven.src.path (is that the right property?). what do others do out there? Ryan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: location of generated source
I always put XDoclet-generated files in target/xdoclet/hibernatedoclet, target/xdoclet/springdoclet, that kind of thing. Isn't it true that XDoclet won't bother re-creating your generated classes if the timestamps on the source and destination files match? I mean is there a force=false kind of setting or something? You can also set maven -DdoXDoclet=true on the command line and just j:if test=${doXDoclet == 'true'} xdoclet things copy xdoclet-generated source over to src/java... /j:if - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 8:07 AM Subject: location of generated source Where do most maven developers place generated files (ex: xdoclet)? I've been developing a maven project for the past 6 months and have been dumping all generated files into 'target' to avoid saving into CVS. Now, with over 200 generated classes, and little change, I'd like to avoid having xdoclet run EACH java:compile. So, here are my two options as I see them: 1. create a separate subproject, and have the generated interfaces saved in src/java to appease maven. Add a task into maven.xml to regenerate the classes only when needed. 2. save the files in src/java-gen (or something like that), and modify maven.xml to add that location to the maven.src.path (is that the right property?). what do others do out there? Ryan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: location of generated source
Thanks for the response. Do you find the build to be fast enough for doing incremental builds? I mean, even if xdoclet doesn't generate the files in question, does the timestamp check take unnecessarily long? The reason I was thinking of taking my generated files out of 'target/xdoclet', was because the interfaces and utility classes it generates are so rarely updated, that the constant refreshing of the classes becomes tedious. How large is your project and what do you use xdoclet for (entity and session ejbs, taglibs)? Thanks again. Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:18 PM To: Maven Users List Subject: Re: location of generated source I always put XDoclet-generated files in target/xdoclet/hibernatedoclet, target/xdoclet/springdoclet, that kind of thing. Isn't it true that XDoclet won't bother re-creating your generated classes if the timestamps on the source and destination files match? I mean is there a force=false kind of setting or something? You can also set maven -DdoXDoclet=true on the command line and just j:if test=${doXDoclet == 'true'} xdoclet things copy xdoclet-generated source over to src/java... /j:if - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 8:07 AM Subject: location of generated source Where do most maven developers place generated files (ex: xdoclet)? I've been developing a maven project for the past 6 months and have been dumping all generated files into 'target' to avoid saving into CVS. Now, with over 200 generated classes, and little change, I'd like to avoid having xdoclet run EACH java:compile. So, here are my two options as I see them: 1. create a separate subproject, and have the generated interfaces saved in src/java to appease maven. Add a task into maven.xml to regenerate the classes only when needed. 2. save the files in src/java-gen (or something like that), and modify maven.xml to add that location to the maven.src.path (is that the right property?). what do others do out there? Ryan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: location of generated source
I haven't dealt with XDoclet and EJBs much beyond experimentation. I'm staying away from entity beans anyway, since I'm using hibernate. when the project gets to the point where I want remote access, I'm plan to use Stateless Session Beans only. I mostly use it right now for hibernate and jmx/jboss stuff, and I'm busy trying to write a module for handling springframework stuff. I can suggest an experiment maybe ...? do a touch *.* and run xdoclet, then run it again ...? - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:27 PM Subject: RE: location of generated source Thanks for the response. Do you find the build to be fast enough for doing incremental builds? I mean, even if xdoclet doesn't generate the files in question, does the timestamp check take unnecessarily long? The reason I was thinking of taking my generated files out of 'target/xdoclet', was because the interfaces and utility classes it generates are so rarely updated, that the constant refreshing of the classes becomes tedious. How large is your project and what do you use xdoclet for (entity and session ejbs, taglibs)? Thanks again. Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:18 PM To: Maven Users List Subject: Re: location of generated source I always put XDoclet-generated files in target/xdoclet/hibernatedoclet, target/xdoclet/springdoclet, that kind of thing. Isn't it true that XDoclet won't bother re-creating your generated classes if the timestamps on the source and destination files match? I mean is there a force=false kind of setting or something? You can also set maven -DdoXDoclet=true on the command line and just j:if test=${doXDoclet == 'true'} xdoclet things copy xdoclet-generated source over to src/java... /j:if - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 8:07 AM Subject: location of generated source Where do most maven developers place generated files (ex: xdoclet)? I've been developing a maven project for the past 6 months and have been dumping all generated files into 'target' to avoid saving into CVS. Now, with over 200 generated classes, and little change, I'd like to avoid having xdoclet run EACH java:compile. So, here are my two options as I see them: 1. create a separate subproject, and have the generated interfaces saved in src/java to appease maven. Add a task into maven.xml to regenerate the classes only when needed. 2. save the files in src/java-gen (or something like that), and modify maven.xml to add that location to the maven.src.path (is that the right property?). what do others do out there? Ryan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: location of generated source
One other thing http://ant.apache.org/manual/CoreTasks/uptodate.html maybe you can do the uptodate test yourself to see if it's necessary to run xdoclet. - Original Message - From: Kevin Hagel [EMAIL PROTECTED] To: Maven Users List [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:28 PM Subject: Re: location of generated source I haven't dealt with XDoclet and EJBs much beyond experimentation. I'm staying away from entity beans anyway, since I'm using hibernate. when the project gets to the point where I want remote access, I'm plan to use Stateless Session Beans only. I mostly use it right now for hibernate and jmx/jboss stuff, and I'm busy trying to write a module for handling springframework stuff. I can suggest an experiment maybe ...? do a touch *.* and run xdoclet, then run it again ...? - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:27 PM Subject: RE: location of generated source Thanks for the response. Do you find the build to be fast enough for doing incremental builds? I mean, even if xdoclet doesn't generate the files in question, does the timestamp check take unnecessarily long? The reason I was thinking of taking my generated files out of 'target/xdoclet', was because the interfaces and utility classes it generates are so rarely updated, that the constant refreshing of the classes becomes tedious. How large is your project and what do you use xdoclet for (entity and session ejbs, taglibs)? Thanks again. Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:18 PM To: Maven Users List Subject: Re: location of generated source I always put XDoclet-generated files in target/xdoclet/hibernatedoclet, target/xdoclet/springdoclet, that kind of thing. Isn't it true that XDoclet won't bother re-creating your generated classes if the timestamps on the source and destination files match? I mean is there a force=false kind of setting or something? You can also set maven -DdoXDoclet=true on the command line and just j:if test=${doXDoclet == 'true'} xdoclet things copy xdoclet-generated source over to src/java... /j:if - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 8:07 AM Subject: location of generated source Where do most maven developers place generated files (ex: xdoclet)? I've been developing a maven project for the past 6 months and have been dumping all generated files into 'target' to avoid saving into CVS. Now, with over 200 generated classes, and little change, I'd like to avoid having xdoclet run EACH java:compile. So, here are my two options as I see them: 1. create a separate subproject, and have the generated interfaces saved in src/java to appease maven. Add a task into maven.xml to regenerate the classes only when needed. 2. save the files in src/java-gen (or something like that), and modify maven.xml to add that location to the maven.src.path (is that the right property?). what do others do out there? Ryan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: location of generated source
I'm in a similar situation in my project. Originally built using mainly BMP entity beans, I'm at a point of reevaluation and thinking about hibernate. I think for the time being I'll stick with the generated classes in the target directory, and see if I need them saved in CVS. I can't think of many J2EE applications that aren't using xdoclet, so maybe it would be a good idea to put together a Best Practices guide for this kind of thing? I'm sure there are several people using maven that have these same questions. I think maven does a great job at handling it, but with several different options, a short HOWTO might be beneficial to newbies (and the not so newbielike myself). Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:28 PM To: Maven Users List Subject: Re: location of generated source I haven't dealt with XDoclet and EJBs much beyond experimentation. I'm staying away from entity beans anyway, since I'm using hibernate. when the project gets to the point where I want remote access, I'm plan to use Stateless Session Beans only. I mostly use it right now for hibernate and jmx/jboss stuff, and I'm busy trying to write a module for handling springframework stuff. I can suggest an experiment maybe ...? do a touch *.* and run xdoclet, then run it again ...? - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:27 PM Subject: RE: location of generated source Thanks for the response. Do you find the build to be fast enough for doing incremental builds? I mean, even if xdoclet doesn't generate the files in question, does the timestamp check take unnecessarily long? The reason I was thinking of taking my generated files out of 'target/xdoclet', was because the interfaces and utility classes it generates are so rarely updated, that the constant refreshing of the classes becomes tedious. How large is your project and what do you use xdoclet for (entity and session ejbs, taglibs)? Thanks again. Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:18 PM To: Maven Users List Subject: Re: location of generated source I always put XDoclet-generated files in target/xdoclet/hibernatedoclet, target/xdoclet/springdoclet, that kind of thing. Isn't it true that XDoclet won't bother re-creating your generated classes if the timestamps on the source and destination files match? I mean is there a force=false kind of setting or something? You can also set maven -DdoXDoclet=true on the command line and just j:if test=${doXDoclet == 'true'} xdoclet things copy xdoclet-generated source over to src/java... /j:if - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 8:07 AM Subject: location of generated source Where do most maven developers place generated files (ex: xdoclet)? I've been developing a maven project for the past 6 months and have been dumping all generated files into 'target' to avoid saving into CVS. Now, with over 200 generated classes, and little change, I'd like to avoid having xdoclet run EACH java:compile. So, here are my two options as I see them: 1. create a separate subproject, and have the generated interfaces saved in src/java to appease maven. Add a task into maven.xml to regenerate the classes only when needed. 2. save the files in src/java-gen (or something like that), and modify maven.xml to add that location to the maven.src.path (is that the right property?). what do others do out there? Ryan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: location of generated source
I agree completely. It would also be nice to see some documentation regarding xdoclet settings in project.properties, how they map to values that are used by xdoclet. If I hadn't been so busy trying to write an xdoclet module myself, I would still be regularly lost on this. maven.xdoclet.hibernatedoclet.0=true maven.xdocelt.hibernatedoclet.0.fileset=blah and so on. I actually find it easier to use ant taskdefs in my maven.xml, rather than use the maven settings that the xdoclet plugin suggests. Kevin - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:38 PM Subject: RE: location of generated source I'm in a similar situation in my project. Originally built using mainly BMP entity beans, I'm at a point of reevaluation and thinking about hibernate. I think for the time being I'll stick with the generated classes in the target directory, and see if I need them saved in CVS. I can't think of many J2EE applications that aren't using xdoclet, so maybe it would be a good idea to put together a Best Practices guide for this kind of thing? I'm sure there are several people using maven that have these same questions. I think maven does a great job at handling it, but with several different options, a short HOWTO might be beneficial to newbies (and the not so newbielike myself). Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:28 PM To: Maven Users List Subject: Re: location of generated source I haven't dealt with XDoclet and EJBs much beyond experimentation. I'm staying away from entity beans anyway, since I'm using hibernate. when the project gets to the point where I want remote access, I'm plan to use Stateless Session Beans only. I mostly use it right now for hibernate and jmx/jboss stuff, and I'm busy trying to write a module for handling springframework stuff. I can suggest an experiment maybe ...? do a touch *.* and run xdoclet, then run it again ...? - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:27 PM Subject: RE: location of generated source Thanks for the response. Do you find the build to be fast enough for doing incremental builds? I mean, even if xdoclet doesn't generate the files in question, does the timestamp check take unnecessarily long? The reason I was thinking of taking my generated files out of 'target/xdoclet', was because the interfaces and utility classes it generates are so rarely updated, that the constant refreshing of the classes becomes tedious. How large is your project and what do you use xdoclet for (entity and session ejbs, taglibs)? Thanks again. Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:18 PM To: Maven Users List Subject: Re: location of generated source I always put XDoclet-generated files in target/xdoclet/hibernatedoclet, target/xdoclet/springdoclet, that kind of thing. Isn't it true that XDoclet won't bother re-creating your generated classes if the timestamps on the source and destination files match? I mean is there a force=false kind of setting or something? You can also set maven -DdoXDoclet=true on the command line and just j:if test=${doXDoclet == 'true'} xdoclet things copy xdoclet-generated source over to src/java... /j:if - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 8:07 AM Subject: location of generated source Where do most maven developers place generated files (ex: xdoclet)? I've been developing a maven project for the past 6 months and have been dumping all generated files into 'target' to avoid saving into CVS. Now, with over 200 generated classes, and little change, I'd like to avoid having xdoclet run EACH java:compile. So, here are my two options as I see them: 1. create a separate subproject, and have the generated interfaces saved in src/java to appease maven. Add a task into maven.xml to regenerate the classes only when needed. 2. save the files in src/java-gen (or something like that), and modify maven.xml to add that location to the maven.src.path (is that the right property?). what do others do out there? Ryan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED
RE: location of generated source
It does seem like code generation is a more common strategy today than it was a couple of years ago. Back in 2000 we never generated any code, but tools today make it so easy to generate Java code. The Maven POM does support a sourceModifications element which can alleviate some frustration, and you can also (as mentioned below) modify the maven.compile.src.dir property (or whatever it is) with the mavenAddPath Ant Task. I think it would be great if the POM somehow accomodated the notion of generated source code directory. I also remember one of the outstanding, low-priority tasks from the Maven website was to introduce to the POM the notion of a sample application. More compilable code that, in this case, is not part of the project source tree but somewhere else. One could make little Maven projects, one per sample application, and maybe that is the solution to take when POM inheritance becomes a little more stable. The single java source tree is an elegant solution but sometimes its difficult to work with model. -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:42 PM To: Maven Users List Subject: Re: location of generated source I agree completely. It would also be nice to see some documentation regarding xdoclet settings in project.properties, how they map to values that are used by xdoclet. If I hadn't been so busy trying to write an xdoclet module myself, I would still be regularly lost on this. maven.xdoclet.hibernatedoclet.0=true maven.xdocelt.hibernatedoclet.0.fileset=blah and so on. I actually find it easier to use ant taskdefs in my maven.xml, rather than use the maven settings that the xdoclet plugin suggests. Kevin - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:38 PM Subject: RE: location of generated source I'm in a similar situation in my project. Originally built using mainly BMP entity beans, I'm at a point of reevaluation and thinking about hibernate. I think for the time being I'll stick with the generated classes in the target directory, and see if I need them saved in CVS. I can't think of many J2EE applications that aren't using xdoclet, so maybe it would be a good idea to put together a Best Practices guide for this kind of thing? I'm sure there are several people using maven that have these same questions. I think maven does a great job at handling it, but with several different options, a short HOWTO might be beneficial to newbies (and the not so newbielike myself). Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:28 PM To: Maven Users List Subject: Re: location of generated source I haven't dealt with XDoclet and EJBs much beyond experimentation. I'm staying away from entity beans anyway, since I'm using hibernate. when the project gets to the point where I want remote access, I'm plan to use Stateless Session Beans only. I mostly use it right now for hibernate and jmx/jboss stuff, and I'm busy trying to write a module for handling springframework stuff. I can suggest an experiment maybe ...? do a touch *.* and run xdoclet, then run it again ...? - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 1:27 PM Subject: RE: location of generated source Thanks for the response. Do you find the build to be fast enough for doing incremental builds? I mean, even if xdoclet doesn't generate the files in question, does the timestamp check take unnecessarily long? The reason I was thinking of taking my generated files out of 'target/xdoclet', was because the interfaces and utility classes it generates are so rarely updated, that the constant refreshing of the classes becomes tedious. How large is your project and what do you use xdoclet for (entity and session ejbs, taglibs)? Thanks again. Ryan -Original Message- From: Kevin Hagel [mailto:[EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 3:18 PM To: Maven Users List Subject: Re: location of generated source I always put XDoclet-generated files in target/xdoclet/hibernatedoclet, target/xdoclet/springdoclet, that kind of thing. Isn't it true that XDoclet won't bother re-creating your generated classes if the timestamps on the source and destination files match? I mean is there a force=false kind of setting or something? You can also set maven -DdoXDoclet=true on the command line and just j:if test=${doXDoclet == 'true'} xdoclet things copy xdoclet-generated source over to src/java... /j:if - Original Message - From: Sonnek, Ryan [EMAIL PROTECTED] To: 'Maven Users List' [EMAIL PROTECTED] Sent: Tuesday, December 09, 2003 8:07 AM Subject: location