1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-07-15 01:24:29 +02:00

Renamed metamf.py to jar-manifest.py, plus other changes

This commit is contained in:
listuser
2021-12-30 15:02:48 -08:00
parent 7edad3f676
commit 5e1d7d777c
8 changed files with 304 additions and 2544 deletions

View File

@ -1,18 +1,13 @@
"""jc - JSON CLI output utility `metamf` command output parser """jc - JSON CLI output utility `jar-manifest` command output parser
Options supported:
- none
Create key value pairs from a MANIFEST.MF file, to include key multiline value pairs.
Usage (cli): Usage (cli):
$ cat MANIFEST.MF | jc --metamf $ cat MANIFEST.MF | jc --jar-manifest
Usage (module): Usage (module):
import jc.parsers.metamf import jc.parsers.jar-manifest
result = jc.parsers.metamf.parse(metamf_command_output) result = jc.parsers.jar-manifest.parse(jar-manifest_command_output)
Schema: Schema:
@ -25,11 +20,11 @@ Schema:
Examples: Examples:
$ cat MANIFEST.MF | jc --metamf -p $ cat MANIFEST.MF | jc --jar-manifest -p
$ unzip -c apache-log4j-2.16.0-bin/log4j-core-2.16.0.jar META-INF/MANIFEST.MF | jc --metamf -p $ unzip -c apache-log4j-2.16.0-bin/log4j-core-2.16.0.jar META-INF/MANIFEST.MF | jc --jar-manifest -p
$ unzip -c 'apache-log4j-2.16.0-bin/*.jar' META-INF/MANIFEST.MF | jc --metamf -p $ unzip -c 'apache-log4j-2.16.0-bin/*.jar' META-INF/MANIFEST.MF | jc --jar-manifest -p
$ cat MANIFEST.MF | jc --metamf -p $ cat MANIFEST.MF | jc --jar-manifest -p
[ [
{ {
@ -47,7 +42,7 @@ Examples:
} }
] ]
$ unzip -c 'apache-log4j-2.16.0-bin/*.jar' META-INF/MANIFEST.MF | jc --metamf -p $ unzip -c 'apache-log4j-2.16.0-bin/*.jar' META-INF/MANIFEST.MF | jc --jar-manifest -p
[ [
... ...
@ -80,7 +75,6 @@ Examples:
] ]
""" """
import jc.utils import jc.utils
import jc.parsers.universal
import re import re
@ -90,7 +84,7 @@ class info():
description = 'MANIFEST.MF file parser' description = 'MANIFEST.MF file parser'
author = 'Matt J' author = 'Matt J'
author_email = 'https://github.com/listuser' author_email = 'https://github.com/listuser'
compatible = ['linux'] compatible = ['linux', 'darwin', 'cygwin', 'win32', 'aix', 'freebsd']
__version__ = info.version __version__ = info.version
@ -163,11 +157,8 @@ def parse(data, raw=False, quiet=False):
for i, line in enumerate(archive_item): for i, line in enumerate(archive_item):
last = archive_item[-1] last = archive_item[-1]
# handle this line separately # remove line since it is not needed and starts with "space"
if (re.match(r'^\s+inflating\s*:\s*META-INF/MANIFEST.MF', line, re.IGNORECASE)): if (re.match(r'^\s+inflating\s*:\s*META-INF/MANIFEST.MF', line, re.IGNORECASE)):
k, v = line.split(":", maxsplit=1)
v = re.sub(r'\s', '', v)
manifests.append({k: v})
archive_item.pop(i) archive_item.pop(i)
continue continue
@ -212,8 +203,7 @@ def parse(data, raw=False, quiet=False):
# all other key value pairs # all other key value pairs
for i, line in enumerate(archive_item): for i, line in enumerate(archive_item):
k, v = line.split(":", maxsplit=1) k, v = line.split(":", maxsplit=1)
v = v.rstrip() v = v.strip()
v = v.lstrip()
manifests.append({k: v}) manifests.append({k: v})
if manifests: if manifests:

File diff suppressed because one or more lines are too long

View File

@ -1,14 +0,0 @@
unzip apache-log4j-2.17.0-bin/log4j-core-2.17.0.jar META-INF/MANIFEST.MF
cat MANIFEST.MF | jc --metamf > MANIFEST.MF.json
#####
unzip -c apache-log4j-2.17.0-bin/log4j-core-2.17.0.jar META-INF/MANIFEST.MF > unzip_c_MANIFEST.MF.single_jar.out
unzip -c apache-log4j-2.17.0-bin/log4j-core-2.17.0.jar META-INF/MANIFEST.MF | jc --metamf > unzip_c_MANIFEST.MF.single_jar.json
#####
unzip -c 'apache-log4j-2.17.0-bin/*.jar' META-INF/MANIFEST.MF > unzip_c_MANIFEST.MF.multi_jar.out
unzip -c 'apache-log4j-2.17.0-bin/*.jar' META-INF/MANIFEST.MF | jc --metamf > unzip_c_MANIFEST.MF.multi_jar.json

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,295 +0,0 @@
Archive: apache-log4j-2.17.0-bin/log4j-core-2.17.0.jar
inflating: META-INF/MANIFEST.MF
Manifest-Version: 1.0
Bundle-License: https://www.apache.org/licenses/LICENSE-2.0.txt
Bundle-SymbolicName: org.apache.logging.log4j.core
Built-By: rgoers
Bnd-LastModified: 1639792304782
Implementation-Vendor-Id: org.apache.logging.log4j
Specification-Title: Apache Log4j Core
Log4jReleaseManager: Ralph Goers
Bundle-DocURL: https://www.apache.org/
Import-Package: com.conversantmedia.util.concurrent;resolution:=option
al,com.fasterxml.jackson.annotation;version="[2.12,3)";resolution:=op
tional,com.fasterxml.jackson.core;version="[2.12,3)";resolution:=opti
onal,com.fasterxml.jackson.core.type;version="[2.12,3)";resolution:=o
ptional,com.fasterxml.jackson.core.util;version="[2.12,3)";resolution
:=optional,com.fasterxml.jackson.databind;version="[2.12,3)";resoluti
on:=optional,com.fasterxml.jackson.databind.annotation;version="[2.12
,3)";resolution:=optional,com.fasterxml.jackson.databind.deser.std;ve
rsion="[2.12,3)";resolution:=optional,com.fasterxml.jackson.databind.
module;version="[2.12,3)";resolution:=optional,com.fasterxml.jackson.
databind.node;version="[2.12,3)";resolution:=optional,com.fasterxml.j
ackson.databind.ser;version="[2.12,3)";resolution:=optional,com.faste
rxml.jackson.databind.ser.impl;version="[2.12,3)";resolution:=optiona
l,com.fasterxml.jackson.databind.ser.std;version="[2.12,3)";resolutio
n:=optional,com.fasterxml.jackson.dataformat.xml;version="[2.12,3)";r
esolution:=optional,com.fasterxml.jackson.dataformat.xml.annotation;v
ersion="[2.12,3)";resolution:=optional,com.fasterxml.jackson.dataform
at.xml.util;version="[2.12,3)";resolution:=optional,com.fasterxml.jac
kson.dataformat.yaml;version="[2.12,3)";resolution:=optional,com.lmax
.disruptor;version="[3.4,4)";resolution:=optional,com.lmax.disruptor.
dsl;version="[3.4,4)";resolution:=optional,javax.activation;version="
[1.2,2)";resolution:=optional,javax.annotation.processing,javax.crypt
o,javax.jms;version="[1.1,2)";resolution:=optional,javax.lang.model,j
avax.lang.model.element,javax.lang.model.util,javax.mail;version="[1.
6,2)";resolution:=optional,javax.mail.internet;version="[1.6,2)";reso
lution:=optional,javax.mail.util;version="[1.6,2)";resolution:=option
al,javax.management,javax.naming,javax.net,javax.net.ssl,javax.script
,javax.sql,javax.tools,javax.xml.parsers,javax.xml.stream,javax.xml.t
ransform,javax.xml.transform.stream,javax.xml.validation,org.apache.c
ommons.compress.compressors;version="[1.21,2)";resolution:=optional,o
rg.apache.commons.compress.utils;version="[1.21,2)";resolution:=optio
nal,org.apache.commons.csv;version="[1.9,2)";resolution:=optional,org
.apache.kafka.clients.producer;resolution:=optional,org.apache.loggin
g.log4j;version="[2.17,3)",org.apache.logging.log4j.core,org.apache.l
ogging.log4j.core.appender,org.apache.logging.log4j.core.appender.db,
org.apache.logging.log4j.core.appender.rewrite,org.apache.logging.log
4j.core.appender.rolling,org.apache.logging.log4j.core.appender.rolli
ng.action,org.apache.logging.log4j.core.async,org.apache.logging.log4
j.core.config,org.apache.logging.log4j.core.config.arbiters,org.apach
e.logging.log4j.core.config.builder.api,org.apache.logging.log4j.core
.config.builder.impl,org.apache.logging.log4j.core.config.composite,o
rg.apache.logging.log4j.core.config.json,org.apache.logging.log4j.cor
e.config.plugins,org.apache.logging.log4j.core.config.plugins.convert
,org.apache.logging.log4j.core.config.plugins.processor,org.apache.lo
gging.log4j.core.config.plugins.util,org.apache.logging.log4j.core.co
nfig.plugins.validation,org.apache.logging.log4j.core.config.plugins.
validation.constraints,org.apache.logging.log4j.core.config.plugins.v
alidation.validators,org.apache.logging.log4j.core.config.plugins.vis
itors,org.apache.logging.log4j.core.config.status,org.apache.logging.
log4j.core.filter,org.apache.logging.log4j.core.impl,org.apache.loggi
ng.log4j.core.jackson,org.apache.logging.log4j.core.jmx,org.apache.lo
gging.log4j.core.layout,org.apache.logging.log4j.core.layout.internal
,org.apache.logging.log4j.core.lookup,org.apache.logging.log4j.core.n
et,org.apache.logging.log4j.core.net.ssl,org.apache.logging.log4j.cor
e.pattern,org.apache.logging.log4j.core.script,org.apache.logging.log
4j.core.selector,org.apache.logging.log4j.core.time,org.apache.loggin
g.log4j.core.tools.picocli,org.apache.logging.log4j.core.util,org.apa
che.logging.log4j.core.util.datetime,org.apache.logging.log4j.message
;version="[2.17,3)",org.apache.logging.log4j.spi;version="[2.17,3)",o
rg.apache.logging.log4j.status;version="[2.17,3)",org.apache.logging.
log4j.util;version="[2.17,3)",org.codehaus.stax2;version="[4.2,5)";re
solution:=optional,org.fusesource.jansi;version="[2.3,3)";resolution:
=optional,org.jctools.queues;resolution:=optional,org.osgi.framework;
version="[1.6,2)",org.osgi.framework.wiring;version="[1.0,2)",org.w3c
.dom,org.xml.sax,org.zeromq;version="[0.4,1)";resolution:=optional,su
n.reflect;resolution:=optional
Require-Capability: osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))"
Export-Package: org.apache.logging.log4j.core;uses:="org.apache.loggin
g.log4j,org.apache.logging.log4j.core.config,org.apache.logging.log4j
.core.impl,org.apache.logging.log4j.core.layout,org.apache.logging.lo
g4j.core.time,org.apache.logging.log4j.message,org.apache.logging.log
4j.spi,org.apache.logging.log4j.status,org.apache.logging.log4j.util"
;version="2.17.0",org.apache.logging.log4j.core.appender;uses:="org.a
pache.logging.log4j,org.apache.logging.log4j.core,org.apache.logging.
log4j.core.appender.rolling,org.apache.logging.log4j.core.async,org.a
pache.logging.log4j.core.config,org.apache.logging.log4j.core.config.
plugins,org.apache.logging.log4j.core.config.plugins.validation.const
raints,org.apache.logging.log4j.core.filter,org.apache.logging.log4j.
core.impl,org.apache.logging.log4j.core.layout,org.apache.logging.log
4j.core.net,org.apache.logging.log4j.core.net.ssl,org.apache.logging.
log4j.core.script,org.apache.logging.log4j.core.util,org.apache.loggi
ng.log4j.status";version="2.17.0",org.apache.logging.log4j.core.appen
der.db;uses:="org.apache.logging.log4j.core,org.apache.logging.log4j.
core.appender,org.apache.logging.log4j.core.config,org.apache.logging
.log4j.core.config.plugins,org.apache.logging.log4j.core.util";versio
n="2.17.0",org.apache.logging.log4j.core.appender.db.jdbc;uses:="org.
apache.logging.log4j,org.apache.logging.log4j.core,org.apache.logging
.log4j.core.appender.db,org.apache.logging.log4j.core.config,org.apac
he.logging.log4j.core.config.plugins,org.apache.logging.log4j.core.co
nfig.plugins.validation.constraints,org.apache.logging.log4j.core.lay
out,org.apache.logging.log4j.core.util";version="2.17.0",org.apache.l
ogging.log4j.core.appender.mom;uses:="javax.jms,org.apache.logging.lo
g4j.core,org.apache.logging.log4j.core.appender,org.apache.logging.lo
g4j.core.config,org.apache.logging.log4j.core.config.plugins,org.apac
he.logging.log4j.core.net,org.apache.logging.log4j.core.util";version
="2.17.0",org.apache.logging.log4j.core.appender.mom.jeromq;uses:="or
g.apache.logging.log4j.core,org.apache.logging.log4j.core.appender,or
g.apache.logging.log4j.core.config,org.apache.logging.log4j.core.conf
ig.plugins,org.apache.logging.log4j.core.config.plugins.validation.co
nstraints,org.zeromq";version="2.17.0",org.apache.logging.log4j.core.
appender.mom.kafka;uses:="org.apache.kafka.clients.producer,org.apach
e.logging.log4j.core,org.apache.logging.log4j.core.appender,org.apach
e.logging.log4j.core.config,org.apache.logging.log4j.core.config.plug
ins,org.apache.logging.log4j.core.util";version="2.17.0",org.apache.l
ogging.log4j.core.appender.nosql;uses:="org.apache.logging.log4j.core
,org.apache.logging.log4j.core.appender,org.apache.logging.log4j.core
.appender.db,org.apache.logging.log4j.core.config.plugins,org.apache.
logging.log4j.core.util";version="2.17.0",org.apache.logging.log4j.co
re.appender.rewrite;uses:="org.apache.logging.log4j,org.apache.loggin
g.log4j.core,org.apache.logging.log4j.core.appender,org.apache.loggin
g.log4j.core.config,org.apache.logging.log4j.core.config.plugins,org.
apache.logging.log4j.core.util";version="2.17.0",org.apache.logging.l
og4j.core.appender.rolling;uses:="org.apache.logging.log4j,org.apache
.logging.log4j.core,org.apache.logging.log4j.core.appender,org.apache
.logging.log4j.core.appender.rolling.action,org.apache.logging.log4j.
core.config,org.apache.logging.log4j.core.config.plugins,org.apache.l
ogging.log4j.core.lookup,org.apache.logging.log4j.core.util";version=
"2.17.0",org.apache.logging.log4j.core.appender.rolling.action;uses:=
"org.apache.logging.log4j,org.apache.logging.log4j.core.config,org.ap
ache.logging.log4j.core.config.plugins,org.apache.logging.log4j.core.
lookup,org.apache.logging.log4j.core.script,org.apache.logging.log4j.
core.util";version="2.17.0",org.apache.logging.log4j.core.appender.ro
uting;uses:="org.apache.logging.log4j.core,org.apache.logging.log4j.c
ore.appender,org.apache.logging.log4j.core.appender.rewrite,org.apach
e.logging.log4j.core.config,org.apache.logging.log4j.core.config.plug
ins,org.apache.logging.log4j.core.script,org.apache.logging.log4j.cor
e.util";version="2.17.0",org.apache.logging.log4j.core.async;uses:="c
om.conversantmedia.util.concurrent,com.lmax.disruptor,org.apache.logg
ing.log4j,org.apache.logging.log4j.core,org.apache.logging.log4j.core
.appender,org.apache.logging.log4j.core.config,org.apache.logging.log
4j.core.config.plugins,org.apache.logging.log4j.core.config.plugins.v
alidation.constraints,org.apache.logging.log4j.core.impl,org.apache.l
ogging.log4j.core.jmx,org.apache.logging.log4j.core.selector,org.apac
he.logging.log4j.core.time,org.apache.logging.log4j.core.util,org.apa
che.logging.log4j.message,org.apache.logging.log4j.util";version="2.1
7.0",org.apache.logging.log4j.core.config;uses:="org.apache.logging.l
og4j,org.apache.logging.log4j.core,org.apache.logging.log4j.core.asyn
c,org.apache.logging.log4j.core.config.builder.api,org.apache.logging
.log4j.core.config.plugins,org.apache.logging.log4j.core.config.plugi
ns.util,org.apache.logging.log4j.core.config.plugins.validation.const
raints,org.apache.logging.log4j.core.filter,org.apache.logging.log4j.
core.impl,org.apache.logging.log4j.core.lookup,org.apache.logging.log
4j.core.net,org.apache.logging.log4j.core.script,org.apache.logging.l
og4j.core.util,org.apache.logging.log4j.message,org.apache.logging.lo
g4j.util";version="2.17.0",org.apache.logging.log4j.core.config.arbit
ers;uses:="org.apache.logging.log4j.core.config,org.apache.logging.lo
g4j.core.config.plugins,org.apache.logging.log4j.core.util";version="
2.17.0",org.apache.logging.log4j.core.config.builder.api;uses:="org.a
pache.logging.log4j,org.apache.logging.log4j.core,org.apache.logging.
log4j.core.config,org.apache.logging.log4j.core.config.builder.impl,o
rg.apache.logging.log4j.core.util";version="2.17.0",org.apache.loggin
g.log4j.core.config.builder.impl;uses:="javax.xml.transform,org.apach
e.logging.log4j,org.apache.logging.log4j.core,org.apache.logging.log4
j.core.config,org.apache.logging.log4j.core.config.builder.api,org.ap
ache.logging.log4j.core.config.plugins.util,org.apache.logging.log4j.
core.config.status";version="2.17.0",org.apache.logging.log4j.core.co
nfig.composite;uses:="org.apache.logging.log4j.core.config,org.apache
.logging.log4j.core.config.plugins.util";version="2.17.0",org.apache.
logging.log4j.core.config.json;uses:="com.fasterxml.jackson.databind,
org.apache.logging.log4j.core,org.apache.logging.log4j.core.config,or
g.apache.logging.log4j.core.config.plugins";version="2.17.0",org.apac
he.logging.log4j.core.config.plugins;uses:="org.apache.logging.log4j.
core.config.plugins.visitors";version="2.17.0",org.apache.logging.log
4j.core.config.plugins.convert;uses:="org.apache.logging.log4j,org.ap
ache.logging.log4j.core.appender.rolling.action,org.apache.logging.lo
g4j.core.config.plugins,org.apache.logging.log4j.core.util";version="
2.17.0",org.apache.logging.log4j.core.config.plugins.processor;uses:=
"javax.annotation.processing,javax.lang.model,javax.lang.model.elemen
t";version="2.17.0",org.apache.logging.log4j.core.config.plugins.util
;uses:="org.apache.logging.log4j.core,org.apache.logging.log4j.core.c
onfig,org.apache.logging.log4j.core.config.plugins.processor,org.apac
he.logging.log4j.core.util";version="2.17.0",org.apache.logging.log4j
.core.config.plugins.validation;version="2.17.0",org.apache.logging.l
og4j.core.config.plugins.validation.constraints;uses:="org.apache.log
ging.log4j.core.config.plugins.validation,org.apache.logging.log4j.co
re.config.plugins.validation.validators";version="2.17.0",org.apache.
logging.log4j.core.config.plugins.validation.validators;uses:="org.ap
ache.logging.log4j.core.config.plugins.validation,org.apache.logging.
log4j.core.config.plugins.validation.constraints";version="2.17.0",or
g.apache.logging.log4j.core.config.plugins.visitors;uses:="org.apache
.logging.log4j,org.apache.logging.log4j.core,org.apache.logging.log4j
.core.config,org.apache.logging.log4j.core.config.plugins,org.apache.
logging.log4j.core.lookup";version="2.17.0",org.apache.logging.log4j.
core.config.properties;uses:="org.apache.logging.log4j.core,org.apach
e.logging.log4j.core.config,org.apache.logging.log4j.core.config.buil
der.api,org.apache.logging.log4j.core.config.builder.impl,org.apache.
logging.log4j.core.config.plugins,org.apache.logging.log4j.core.util"
;version="2.17.0",org.apache.logging.log4j.core.config.status;uses:="
org.apache.logging.log4j";version="2.17.0",org.apache.logging.log4j.c
ore.config.xml;uses:="org.apache.logging.log4j.core,org.apache.loggin
g.log4j.core.config,org.apache.logging.log4j.core.config.plugins";ver
sion="2.17.0",org.apache.logging.log4j.core.config.yaml;uses:="com.fa
sterxml.jackson.databind,org.apache.logging.log4j.core,org.apache.log
ging.log4j.core.config,org.apache.logging.log4j.core.config.json,org.
apache.logging.log4j.core.config.plugins";version="2.17.0",org.apache
.logging.log4j.core.filter;uses:="org.apache.logging.log4j,org.apache
.logging.log4j.core,org.apache.logging.log4j.core.config,org.apache.l
ogging.log4j.core.config.plugins,org.apache.logging.log4j.core.script
,org.apache.logging.log4j.core.util,org.apache.logging.log4j.message,
org.apache.logging.log4j.util";version="2.17.0",org.apache.logging.lo
g4j.core.impl;uses:="org.apache.logging.log4j,org.apache.logging.log4
j.core,org.apache.logging.log4j.core.config,org.apache.logging.log4j.
core.pattern,org.apache.logging.log4j.core.selector,org.apache.loggin
g.log4j.core.time,org.apache.logging.log4j.core.util,org.apache.loggi
ng.log4j.message,org.apache.logging.log4j.spi,org.apache.logging.log4
j.util";version="2.17.0",org.apache.logging.log4j.core.jackson;uses:=
"com.fasterxml.jackson.core,com.fasterxml.jackson.databind,com.faster
xml.jackson.databind.deser.std,com.fasterxml.jackson.databind.ser.std
,com.fasterxml.jackson.dataformat.xml,com.fasterxml.jackson.dataforma
t.yaml,org.apache.logging.log4j.message,org.apache.logging.log4j.util
";version="2.17.0",org.apache.logging.log4j.core.jmx;uses:="com.lmax.
disruptor,javax.management,org.apache.logging.log4j,org.apache.loggin
g.log4j.core,org.apache.logging.log4j.core.appender,org.apache.loggin
g.log4j.core.config,org.apache.logging.log4j.core.selector,org.apache
.logging.log4j.status";version="2.17.0",org.apache.logging.log4j.core
.layout;uses:="com.fasterxml.jackson.annotation,com.fasterxml.jackson
.core,com.fasterxml.jackson.databind,com.fasterxml.jackson.dataformat
.xml.annotation,org.apache.commons.csv,org.apache.logging.log4j,org.a
pache.logging.log4j.core,org.apache.logging.log4j.core.config,org.apa
che.logging.log4j.core.config.plugins,org.apache.logging.log4j.core.i
mpl,org.apache.logging.log4j.core.net,org.apache.logging.log4j.core.p
attern,org.apache.logging.log4j.core.script,org.apache.logging.log4j.
core.util,org.apache.logging.log4j.message";version="2.17.0",org.apac
he.logging.log4j.core.layout.internal;version="2.17.0",org.apache.log
ging.log4j.core.lookup;uses:="org.apache.logging.log4j.core,org.apach
e.logging.log4j.core.config,org.apache.logging.log4j.core.config.plug
ins";version="2.17.0",org.apache.logging.log4j.core.message;uses:="or
g.apache.logging.log4j.message";version="2.17.0",org.apache.logging.l
og4j.core.net;uses:="javax.mail,javax.mail.internet,javax.naming,org.
apache.logging.log4j,org.apache.logging.log4j.core,org.apache.logging
.log4j.core.appender,org.apache.logging.log4j.core.config,org.apache.
logging.log4j.core.config.plugins,org.apache.logging.log4j.core.net.s
sl,org.apache.logging.log4j.core.util";version="2.17.0",org.apache.lo
gging.log4j.core.net.ssl;uses:="javax.net.ssl,org.apache.logging.log4
j.core.config.plugins,org.apache.logging.log4j.status";version="2.17.
0",org.apache.logging.log4j.core.osgi;uses:="org.apache.logging.log4j
.core,org.apache.logging.log4j.core.selector,org.osgi.framework";vers
ion="2.17.0",org.apache.logging.log4j.core.parser;uses:="org.apache.l
ogging.log4j.core";version="2.17.0",org.apache.logging.log4j.core.pat
tern;uses:="org.apache.logging.log4j,org.apache.logging.log4j.core,or
g.apache.logging.log4j.core.config,org.apache.logging.log4j.core.conf
ig.plugins,org.apache.logging.log4j.core.impl,org.apache.logging.log4
j.core.time,org.apache.logging.log4j.message,org.fusesource.jansi";ve
rsion="2.17.0",org.apache.logging.log4j.core.script;uses:="javax.scri
pt,org.apache.logging.log4j,org.apache.logging.log4j.core.config,org.
apache.logging.log4j.core.config.plugins,org.apache.logging.log4j.cor
e.util";version="2.17.0",org.apache.logging.log4j.core.selector;uses:
="org.apache.logging.log4j.core,org.apache.logging.log4j.spi,org.apac
he.logging.log4j.status";version="2.17.0",org.apache.logging.log4j.co
re.time;uses:="org.apache.logging.log4j.core.util,org.apache.logging.
log4j.util";version="2.17.0",org.apache.logging.log4j.core.time.inter
nal;uses:="org.apache.logging.log4j.core.time";version="2.17.0",org.a
pache.logging.log4j.core.tools;version="2.17.0",org.apache.logging.lo
g4j.core.tools.picocli;version="2.17.0",org.apache.logging.log4j.core
.util;uses:="javax.crypto,javax.naming,org.apache.logging.log4j,org.a
pache.logging.log4j.core,org.apache.logging.log4j.core.config,org.apa
che.logging.log4j.core.config.plugins,org.apache.logging.log4j.util";
version="2.17.0",org.apache.logging.log4j.core.util.datetime;uses:="o
rg.apache.logging.log4j.core.time";version="2.17.0"
Bundle-Name: Apache Log4j Core
Log4jReleaseVersionJava6: 2.3
Multi-Release: true
Bundle-Activator: org.apache.logging.log4j.core.osgi.Activator
Log4jReleaseVersionJava7: 2.12.2
Log4jReleaseVersion: 2.17.0
Implementation-Title: Apache Log4j Core
Bundle-Description: The Apache Log4j Implementation
Automatic-Module-Name: org.apache.logging.log4j.core
Implementation-Version: 2.17.0
Specification-Vendor: The Apache Software Foundation
Bundle-ManifestVersion: 2
Bundle-Vendor: The Apache Software Foundation
Tool: Bnd-3.5.0.201709291849
Implementation-Vendor: The Apache Software Foundation
Bundle-Version: 2.17.0
X-Compile-Target-JDK: 1.8
X-Compile-Source-JDK: 1.8
Created-By: Apache Maven Bundle Plugin
Build-Jdk: 1.8.0_144
Specification-Version: 2.17.0
Implementation-URL: https://logging.apache.org/log4j/2.x/log4j-core/
Log4jReleaseKey: B3D8E1BA