You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Sahoo (JIRA)" <ji...@apache.org> on 2008/07/03 06:40:45 UTC

[jira] Created: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

manifest goal of maven-bundle-plugin ignores _include instruction
-----------------------------------------------------------------

                 Key: FELIX-620
                 URL: https://issues.apache.org/jira/browse/FELIX-620
             Project: Felix
          Issue Type: Bug
          Components: Maven Bundle Plugin
    Affects Versions: maven-bundle-plugin-1.4.1
         Environment: Maven version: 2.0.7
Java version: 1.5.0_13-rev
OS name: "sunos" version: "5.11" arch: "x86"

            Reporter: Sahoo
             Fix For: maven-bundle-plugin-1.4.2


It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 

I am attaching a very simple test case along with a README describing the issue.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Stuart McCulloch (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611594#action_12611594 ] 

Stuart McCulloch commented on FELIX-620:
----------------------------------------

No firm date yet - but at least by the end of July, if that's any help.

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>            Assignee: Stuart McCulloch
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Sahoo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12610939#action_12610939 ] 

Sahoo commented on FELIX-620:
-----------------------------

That's good. But, as I mentioned in the README, the problem is not about missing warning. I also felt that manifest goal was not processing the instructions file. To reproduce this, please do the following (copied and pasted from the README):
Just change pom.xml to use osgi.bundle and 
pom.xml.notworking to use osgi.bundle2. Both these files exist. Now generate
two jars one with each pom.xml. Look at their manifest files. The one created
with bundle goal has only sahoo.osgitest2.foo.api exported, where as the one
with manifest goal exports sahoo.osgitest2.foo.impl as well as api package. So,
it completely ignored the instructions found in osgi.bundle2 file.


> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Sahoo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611146#action_12611146 ] 

Sahoo commented on FELIX-620:
-----------------------------

Thanks for pointing out the typo in osgi.bundl2. Will the merge behavior of the manifest goal be addressed as part of this issue, or do you want a separate issue (enhancement request) to be filed?

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Stuart McCulloch (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12610934#action_12610934 ] 

Stuart McCulloch commented on FELIX-620:
----------------------------------------

Actually the include instruction is being processed, but the manifest goal is not reporting the errors/warnings from Bnd.
I have just added code to report these errors/warnings, and the testcase now behaves the same for both of the goals.

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Stuart McCulloch (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12610946#action_12610946 ] 

Stuart McCulloch commented on FELIX-620:
----------------------------------------

No - it does read the instructions from osgi.bundle2 (you can confirm this by adding a unique entry like "TEST:ME") - the issue here is actually that the manifest goal is overwriting the included property with a default export based on the contents of the jar, because it checks for the existence of the export instruction in the original POM instructions rather than the merged instructions.

BTW, there is also a typo in osgi.bundle2 where it uses "_exportcontents", rather than  "-exportcontents".

Instructions inside included files are processed by Bnd, so it expects the notation described on Peter's website (http://aqute.biz/Code/Bnd#directives) i.e. "-exportcontents".  However, because XML doesn't allow tags that start with '-' we can't have <-exportcontents> in the POM, so instead we accept <_exportcontents> and transform this internally to "-exportcontents" before passing it onto Bnd. But this is only for the POM to get around the XML tag restriction.



> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Stuart McCulloch (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stuart McCulloch resolved FELIX-620.
------------------------------------

    Resolution: Fixed

Fixed in trunk - manifest goal now follows export instructions from included property files.

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Sahoo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sahoo updated FELIX-620:
------------------------

    Attachment: Felix-620.zip

Test case along with README

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Stuart McCulloch (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stuart McCulloch reassigned FELIX-620:
--------------------------------------

    Assignee: Stuart McCulloch

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>            Assignee: Stuart McCulloch
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Stuart McCulloch (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12619362#action_12619362 ] 

Stuart McCulloch commented on FELIX-620:
----------------------------------------

This is available for testing in the latest 1.4.2-SNAPSHOT, I expect to start the release vote tomorrow

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>            Assignee: Stuart McCulloch
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (FELIX-620) manifest goal of maven-bundle-plugin ignores _include instruction

Posted by "Sahoo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/FELIX-620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12611436#action_12611436 ] 

Sahoo commented on FELIX-620:
-----------------------------

 Thanks for fixing the bug so quickly. When is the next version of maven-bundle-plugin scheduled to be released?I can plan my activity accordingly. 

> manifest goal of maven-bundle-plugin ignores _include instruction
> -----------------------------------------------------------------
>
>                 Key: FELIX-620
>                 URL: https://issues.apache.org/jira/browse/FELIX-620
>             Project: Felix
>          Issue Type: Bug
>          Components: Maven Bundle Plugin
>    Affects Versions: maven-bundle-plugin-1.4.1
>         Environment: Maven version: 2.0.7
> Java version: 1.5.0_13-rev
> OS name: "sunos" version: "5.11" arch: "x86"
>            Reporter: Sahoo
>            Assignee: Stuart McCulloch
>             Fix For: maven-bundle-plugin-1.4.2
>
>         Attachments: Felix-620.zip
>
>
> It appears to me that if I just invoke *manifest* goal of maven-bundle-plugin, it ignores *_include* instruction, where as if I use *bundle* goal, it is used by the plugin. There are various ways to test it. The easiest seems to be using a non-existent file name. Attached are two sets of pom files, pom.xml uses bundle goal, where as pom.xml.notworking uses manifest goal. While using the first one, bnd complains about missing osgi.bundle3 file, where as it does not report any such error while using the first one. That makes me think that the manifest Mojo is not sending the file name to bnd. 
> I am attaching a very simple test case along with a README describing the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.