[
https://issues.apache.org/jira/browse/FELIX-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12519449
]
Stuart McCulloch commented on FELIX-333:
----------------------------------------
Actually there is a problem with the manifest, but it's not initially obvious
unless you open it using Linux.
Here's a similar example, note that there's a Unix newline that's not followed
by a space on the next line:
Include-Resource: foo=bar,
zzz=bar^M
The exception thrown from Java is as follows:
org.osgi.framework.BundleException: The manifest line
" zzz=bar" is invalid; it has no colon : character after
the header key.
at
org.eclipse.osgi.framework.util.Headers.parseManifest(Headers.java:283)
at
org.eclipse.osgi.internal.baseadaptor.AdaptorUtil.loadManifestFrom(AdaptorUtil.java:193)
and the standard Jar utility class also barfs with this exception:
java.io.IOException: invalid header field
at java.util.jar.Attributes.read(Attributes.java:383)
at java.util.jar.Manifest.read(Manifest.java:167)
at java.util.jar.JarInputStream.<init>(JarInputStream.java:66)
at java.util.jar.JarInputStream.<init>(JarInputStream.java:43)
The easy solution is to strip newlines from properties in the bundle-plugin
before passing them to BND.
Of course Peter might prefer to handle this inside BND instead, as it might
also be caused when using
BND from ant, etc. and a more robust library is always good :)
BTW, this only seems to happen with instructions passed in via the pom.xml,
possibly because extra
whitespace is automatically removed when they're read in from a properties file
using <_include>...
whereas with XML the whitespace is preserved.
> <Include_Resouce> can create a corrupt manifest file.
> -----------------------------------------------------
>
> Key: FELIX-333
> URL: https://issues.apache.org/jira/browse/FELIX-333
> Project: Felix
> Issue Type: Bug
> Components: Maven Bundle Plugin
> Affects Versions: 1.0.0
> Environment: Confirmed on Win32. Not sure about *nix.
> Reporter: Thomas Dewire
> Fix For: 1.0.0
>
> Attachments: felix-bug-example.zip
>
>
> Please see the attached maven project. It should demonstrate the issue. The
> generated manifest file is in the root directory as an example of the bad
> manifest syntax.
> Whitespace is not being stripped from the contents of the <Include-Resource>
> tag. These end up in the manifest file, and corrupt it so the bundle cannot
> load.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.