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]

Reply via email to