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]

-- 
Roland Asmann

CFC Informationssysteme Entwicklungsgesellschaft m.b.H
Bäckerstrasse 1/2/7
A-1010 Wien
FN 266155f, Handelsgericht Wien

Tel.: +43/1/513 88 77 - 27
Fax.: +43/1/513 88 62
Email: [email protected]
Web: www.cfc.at

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to