maven-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lewis, Eric" <Eric.Le...@ipi.ch>
Subject AW: AW: How to add generated resources directory in a plugin
Date Fri, 02 Oct 2009 12:19:02 GMT
Hi Werner

Yup, I had the same problem, but I'm generating my resources into target/generated-resources/xyz
and then adding that to my build:

    Resource resource = new Resource();
    resource.setDirectory(targetDirectory.getAbsolutePath());
    resource.addInclude("**/*");
    if (createTestConfiguration) {
      mavenProject.addTestResource(resource);
    } else {
      mavenProject.addResource(resource);
    }

They will still end up in target/classes or target/test-classes.

Best regards,
Eric 

> -----Urspr√ľngliche Nachricht-----
> Von: Werner Guttmann [mailto:wguttmn@codehaus.org] 
> Gesendet: Freitag, 2. Oktober 2009 13:46
> An: Maven Users List
> Betreff: Re: AW: How to add generated resources directory in a plugin
> 
> 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:wguttmn@codehaus.org] 
> >> 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: users-unsubscribe@maven.apache.org
> >>>>>> For additional commands, e-mail: users-help@maven.apache.org
> >> 
> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> >>>> For additional commands, e-mail: users-help@maven.apache.org
> >> 
> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> >> For additional commands, e-mail: users-help@maven.apache.org
> >>
> >>
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> > For additional commands, e-mail: users-help@maven.apache.org
> > 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 
> 
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Mime
View raw message