You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ace.apache.org by "J.W. Janssen (JIRA)" <ji...@apache.org> on 2017/07/12 12:17:02 UTC

[jira] [Commented] (ACE-600) Cannot add artifacts if MANIFEST.MF is not at start of JAR

    [ https://issues.apache.org/jira/browse/ACE-600?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16083886#comment-16083886 ] 

J.W. Janssen commented on ACE-600:
----------------------------------

Actually, the JAR spec mandates that the manifest is the first entry in the ZIP file. Not sure how your bundles are created, but they are certainly not valid from a Java point of view...

> Cannot add artifacts if MANIFEST.MF is not at start of JAR
> ----------------------------------------------------------
>
>                 Key: ACE-600
>                 URL: https://issues.apache.org/jira/browse/ACE-600
>             Project: ACE
>          Issue Type: Bug
>            Reporter: Matt Magoffin
>
> I've been attempting to upload some existing OSGi bundle artifacts into ACE (via the web UI) and some JARs are being rejected as "
> Looking into the issue, I found that the JARs are being rejected because when {{org.apache.ace.client.repository.helper.bundle.impl.BundleHelperImpl}} is getting a {{null}} {{Manifest}} object from the {{JarInputStream}} it created from the uploaded artifact:
> {code:java}
> JarInputStream jis = null;
> try {
> 	jis = new JarInputStream(artifact.openStream());
> 	Manifest manifest = jis.getManifest();
> {code}
>  It turns out {{JarInputStream}} will only return a {{Manifest}} in this way if it is at the start of the JAR file, but these failing artifacts have the {{META-INF/MANIFEST.MF}} entry later on in the archive.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)