[ 
http://jira.codehaus.org/browse/MSOURCES-25?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=198754#action_198754
 ] 

Milos Kleint commented on MSOURCES-25:
--------------------------------------

the only problem seems to be aggregate goal which is not capable of retrieving 
the configuration from the reactor projects..

> Allow additional source directories to be configured
> ----------------------------------------------------
>
>                 Key: MSOURCES-25
>                 URL: http://jira.codehaus.org/browse/MSOURCES-25
>             Project: Maven 2.x Source Plugin
>          Issue Type: New Feature
>    Affects Versions: 2.0.3
>            Reporter: Benjamin Bentmann
>            Assignee: Milos Kleint
>            Priority: Minor
>
> Currently, the plugin simply archives the compile source roots and resource 
> directories that are known to the POM. However, there may exist further files 
> which do not directly contribute to the build process but are nevertheless to 
> be considered as "source" files.
> For example, consider a project with the following directories:
> - src/main/java
> - src/main/javacc
> - src/main/jflex
> - src/main/uml
> The directories "javacc" and "jflex" provide grammar definitions for 
> generated java files while "uml" contains UML (or similar) models from which 
> MDA tools create java files. I would consider it useful to package these 
> "pre-source" files as well into the sources JAR.
> Surely, the assembly-plugin would do the job but since it requires quite a 
> complete build I consider this approach quite unattractive when I want to 
> package up files that are already hanging around in the file system.
> While adding more directory roots to the archive is in principle no big deal 
> for the source-plugin, the major question would be how to nicely configure 
> the plugin to do so. My spontaneous proposal would be an additional 
> configuration parameter "sourceDirectories" of type File[] with the following 
> semantic:
> If not specified (as would be the case for all currently existing 
> configurations), simply package compile source roots and resources from POM 
> like it does now. If I understand mojo configuration correctly, the mojo 
> parameter would be null in this case.
> Otherwise (i.e. if POM configuration contains <sourceDirectories> element), 
> ONLY those directories listed up here should be packaged. This would allow 
> precise control what the plugin packages. For example, if one does not want 
> to package resources, simply omit to list up their root directory. For my 
> formerly mentioned example, one would need to write:
> {code:xml}
> <sourceDirectories>
>   <sourceDirectory>src/main/java</sourceDirectory>
>   <sourceDirectory>src/main/javacc</sourceDirectory>
>   <sourceDirectory>src/main/jflex</sourceDirectory>
>   <sourceDirectory>src/main/uml</sourceDirectory>
> </sourceDirectories>
> {code}
> (BTW, not sure whether Plexus can actually handle the non-standard plural 
> form ending with "ies").
> Of course, things are not that simple... The above illustrated approach 
> conflicts with the current solution for MSOURCES-22. Furthermore, the plugin 
> is currently aware of includes/excludes for the resources being packaged. 
> This cannot be realized by a simple configuration parameter of type File[], 
> i.e. <sourceDirectory>src/main/resources</sourceDirectory> would not be 
> equivalent to the default behavior, causing confusion. Therefore, one might 
> need something like a SourceDirectory bean that holds the directory path and 
> optional includes/excludes (similar to an Ant fileset).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to