What I do until this <http://jira.codehaus.org/browse/CASTOR-2829> is
released as part of castor 1.3.1 is to add castor generates sources (.java)
via build helper plugin, and for the Castor resources configure build
resources to along with src/main/resource directory include
${project.build.directory}/generated-sources/castor directory with includes
section that has single include, **/.castor.cdr

Regards,
Stevo.

On Tue, Oct 6, 2009 at 10:15 AM, Roland Asmann <[email protected]> wrote:

> Werber,
>
> Understandable. Then add the generated folder as a sources-folder and a
> resources-folder with a filter on '**/*.java'. I guess that would be the
> easiest way, in case more resource-types make it into this folder.
>
> Roland
>
>
> > Roland,
> >
> > I wish I had a choice, but I have to keep backwards-compatibility. Until
> > now, we used to offer one property on the Mojo to set the output path
> > (with a default of target/generated-sources/castor).
> >
> > Now, we are offering a second option for the resource files generated,
> > but I still have to cater for those expecting things in the old location.
> >
> > Werber
> >
> > Roland Asmann wrote:
> >> Read the part about editing the plugin again... If you're working on the
> >> actual castor-plugin, wouldn't it be easier to just separate the sources
> >> and
> >> resources instead of adding the resources with inclusion/exclusion
> >> rules?
> >>
> >>
> >> On Friday 02 October 2009 13:45, Werner Guttmann wrote:
> >>> Eric,
> >>>
> >>> the .castor.cdr files are a by-product of generating Java classes from
> >>> an XML schema using the XML code generator of Castor (through the Maven
> >>> plugin for Castor).
> >>>
> >>> Those resource files are being generated in
> >>> target/generated-sources/castor during code generation.
> >>>
> >>> I hopes this makes it clearer ....
> >>>
> >>> Werner
> >>>
> >>> Lewis, Eric wrote:
> >>>> Just out of curiosity: Is there a reason that you keep the .cdr files
> >>>> in
> >>>> src/main/java? IMHO you could have them in src/main/resources, since
> >>>> they
> >>>> end up in target/classes anyway.
> >>>>
> >>>> Best regards,
> >>>> Eric
> >>>>
> >>>>> -----Ursprüngliche Nachricht-----
> >>>>> Von: Werner Guttmann [mailto:[email protected]]
> >>>>> Gesendet: Freitag, 2. Oktober 2009 13:13
> >>>>> An: Maven Users List
> >>>>> Betreff: Re: How to add generated resources directory in a plugin
> >>>>>
> >>>>> That does not really match what I am observing .. :-(.
> >>>>>
> >>>>> If I generate Java sources and resources into
> >>>>>
> >>>>> target/generated-sources/castor
> >>>>>
> >>>>> and use
> >>>>>
> >>>>> project.addCompileSourceRoot("target/generated-sources/castor")
> >>>>>
> >>>>> within the Maven plugin for Castor, Maven will include the generated
> >>>>> Java classes during compilation and put the class files in
> >>>>> target/classes of the project.
> >>>>>
> >>>>> As a result of this, users of the Maven plugin for Castor
> >>>>> currently have
> >>>>> to add the following section to their project POMs.
> >>>>>
> >>>>> <resources>
> >>>>>    <resource>
> >>>>>       <directory>target/generated-sources/castor</directory>
> >>>>>       <includes>
> >>>>>          <include>**/*.cdr</include>
> >>>>>       </includes>
> >>>>>    </resource>
> >>>>>    <resource>
> >>>>>       <directory>src/main/resources</directory>
> >>>>>    </resource>
> >>>>> </resources>
> >>>>>
> >>>>> to have those .castor.cdr Files copied to target/classes as
> >>>>> well. As we
> >>>>> all know, this is error-prone.
> >>>>>
> >>>>> As such, I tried to add code to the Maven plugin for Castor
> >>>>> as follows:
> >>>>>
> >>>>> Resource resource = new Resource();
> >>>>> resource.setDirectory( getResourceDestination().getAbsolutePath() );
> >>>>> List<String> includes = new LinkedList<String>();
> >>>>> includes.add( "**/*.cdr" );
> >>>>> resource.setIncludes( includes );
> >>>>> project.addResource( resource );
> >>>>>
> >>>>> Problem is that once I add that code, the Java source files start
> >>>>> showing up in target/classes, which is not ideal.
> >>>>>
> >>>>> Any idea what's going wrong here ?
> >>>>>
> >>>>> Werner
> >>>>>
> >>>>> Roland Asmann wrote:
> >>>>>> I believe this can work (not 100% sure, I generate into two
> >>>>> different
> >>>>>
> >>>>>> directories for sources and resources), but you should
> >>>>> probably ONLY use the
> >>>>>
> >>>>>> addCompileSourceRoot for your directory...
> >>>>>>
> >>>>>> The way I understand it, is that if you put sources &
> >>>>> resources there, they
> >>>>>
> >>>>>> are compiled to the output dir. Java knows how to handle
> >>>>> .java-files -->
> >>>>>
> >>>>>> convert them to classes, and how to handle anything else
> >>>>> --> just copy.
> >>>>>
> >>>>>> If you use the resource-dir, maven will handle the copying
> >>>>> and will copy
> >>>>>
> >>>>>> everything from the source to the target, without compiling.
> >>>>>>
> >>>>>> So, I presume you have used both calls I gave you, although
> >>>>> you should only
> >>>>>
> >>>>>> use one.
> >>>>>>
> >>>>>> Hope this helps,
> >>>>>>
> >>>>>> On Thursday 01 October 2009 15:15, Werner Guttmann wrote:
> >>>>>>> Hi Roland,
> >>>>>>>
> >>>>>>> does this pattern/recipe change if both resources and Java
> >>>>> classes would
> >>>>>
> >>>>>>> be generated in the same directory. I have tried this a
> >>>>> few days ago
> >>>>>
> >>>>>>> (trying to automate a few things for the
> >>>>> castor-maven-plugin), and it
> >>>>>
> >>>>>>> seems like this does not really work.
> >>>>>>>
> >>>>>>> Assume you have a directory where you'll find ....
> >>>>>>>
> >>>>>>> - A.java
> >>>>>>> - B.java
> >>>>>>> - .castor.cdr
> >>>>>>>
> >>>>>>> where the last is a resource file. If I use above code
> >>>>> snippets, I can
> >>>>>
> >>>>>>> see in the target folder after a plugin run and subsequent
> >>>>> compilation
> >>>>>
> >>>>>>> the compiled Java classes, the resource file and the source files.
> >>>>>>>
> >>>>>>> How can I avoid the source files to be copy across ?
> >>>>>>>
> >>>>>>> Regards
> >>>>>>> Werner
> >>>>>>>
> >>>>>>> Roland Asmann wrote:
> >>>>>>>> Assuming you already have the maven-project as a variable
> >>>>> in your plugin
> >>>>>
> >>>>>>>> (if not, add it!):
> >>>>>>>>
> >>>>>>>> project.addCompileSourceRoot("your output directory here");
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> And in the case of resources:
> >>>>>>>>
> >>>>>>>> Resource resource = new Resource();
> >>>>>>>> resource.setDirectory("your output directory here");
> >>>>>>>> resource.addInclude("**/*");
> >>>>>>>> project.addResource(resource);
> >>>>>>>>
> >>>>>>>> On Thursday 01 October 2009 13:59, Lewis, Eric wrote:
> >>>>>>>>> Hi
> >>>>>>>>>
> >>>>>>>>> I'm writing a plugin which generates resources and also
> >>>>> test resources.
> >>>>>
> >>>>>>>>> How in my plugin can I add these directories to the
> >>>>> sources paths and
> >>>>>
> >>>>>>>>> the test resources paths? (Except for using the
> >>>>> build-helper plugin)
> >>>>>
> >>>>>>>>> Best regards,
> >>>>>>>>> Eric
> >>>>> ---------------------------------------------------------------------
> >>>>>
> >>>>>>>>> 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]
> >>
> >
> > ---------------------------------------------------------------------
> > 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]
>
>

Reply via email to