You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Richard S. Hall (JIRA)" <ji...@apache.org> on 2007/05/18 22:44:16 UTC
[jira] Reopened: (FELIX-261) maven-bundle-plugin, Include-Resources
directive and maven
[ https://issues.apache.org/jira/browse/FELIX-261?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Richard S. Hall reopened FELIX-261:
-----------------------------------
Stuart, I just discovered that the applied patch fails on the framework pom file because I include "{src/main/resources}" in <Include-Resource>, which also gets included as "src/main/resources" from the default maven resource list which is apppend to the end of <Include-Resource>. The end result is that my property-substituted version from BND ends up getting overwritten by the latter non-property-substituted version of the resource (i.e., it is copied twice, once with and once without property substitution).
>From my point of view, I want to encourage users of the plugin to use only BND <Include-Resource>, so I wouldn't mind if we modified the plugin to ignore Maven if the <Include-Resource> is specified. If you think this approach is not good, then we need to modify the plugin to ignore any Maven resources that are already specified with <Include-Resource>...personally, I think it isn't worth it and we should make it function either/or and given a warning when combined.
For the time being to get the framework to work, I have hard-coded the property substitution in the Felix.properties file until we get this issue fixed.
> maven-bundle-plugin, Include-Resources directive and maven <resources/>
> -----------------------------------------------------------------------
>
> Key: FELIX-261
> URL: https://issues.apache.org/jira/browse/FELIX-261
> Project: Felix
> Issue Type: Improvement
> Components: Maven Bundle Plugin
> Reporter: Alin Dreghiciu
> Assigned To: Richard S. Hall
> Attachments: FELIX-261-20070413.patch, FELIX-261-20070517.patch
>
>
> Currently maven-bundle-plugin handling of resources is hardcoded to the usgae of folder "src/main/resources".
> It should instead use the <resources/> folder setting from the pom.
> This is a followup of a discussion from felix mail list and bellow is a possible solution from Stuart McCulloch:
> I think you just need to iterate through the project resource list, for example:
> /*
> * I grant license to ASF for inclusion of the following code
> * in ASF works, as per the Apache Software License
> */
> StringBuilder resourcePaths = new StringBuilder();
> for (Iterator i = project.getResources().iterator(); i.hasNext();) {
> org.apache.maven.model.Resource resource =
> (org.apache.maven.model.Resource)i.next();
> if (new File(resource.getDirectory()).exists()) {
> String path = resource.getDirectory();
> String base = baseDir.getAbsolutePath();
> if (path.startsWith(base)) {
> path = path.substring(base.length() + 1);
> }
> if (resourcePaths.length() > 0) {
> resourcePaths.append(',');
> }
> resourcePaths.append(path);
> }
> }
> header(properties, Analyzer.INCLUDE_RESOURCE, resourcePaths);
> /*** warning: it hasn't been thoroughly tested! ***/
> There should also be a plugin option to turn off this code, just in case ;)
> Also should we be preserving the path layout in the bundle, which requires
> the PATH=PATH form of Include-Resource, or should we flatten resources?
> Perhaps add another plugin option...
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.