Mithun Ayachit > Jar-Manifest-0.04 > Jar::Manifest

Download:
Jar-Manifest-0.04.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.04   Source  

NAME ^

Jar::Manifest - Read and Write Java Jar Manifests

SYNOPSIS ^

    use Jar::Manifest qw(Dump Load);

    # Read a Manifest
    my $manifest_str = <<"MANIFEST";
    Manifest-Version: 1.0
    Created-By: 1.5.0_11-b03 (Sun Microsystems Inc.)
    Built-By: JAPH

    Name: org/myapp/foo/
    Implementation-Title: Test Java JAR
    Implementation-Version: 1.9
    Implementation-Vendor: JAPH

    MANIFEST

    my $manifest = Load($manifest_str);
    printf( "Jar built by -> %s\n", $manifest->{main}->{'Built-By'} );
    printf(
        "Name: %s\nVersion: %s\n",
        $_->{Name}, $_->{'Implementation-Version'}
        )
        for @{ $manifest->{entries} };

    # Write a manifest
    my $manifest = {

        # Main attributes
        main => {
            'Manifest-Version' => '1.0',
            'Created-By'       => '1.5.0_11-b03 (Sun Microsystems Inc.)',
            'Built-By'         => 'JAPH',
        },

        # Entries
        entries => [
            {
                'Name'                   => 'org/myapp/foo/',
                'Implementation-Title'   => 'Test Java JAR',
                'Implementation-Version' => '1.9',
                'Implementation-Vendor'  => 'JAPH',
            }
        ],
    };
    my $manifest_string = Dump($manifest);

DESCRIPTION ^

Jar::Manifest provides a perl interface to read and write Manifest files found within Java archives - typically META-INF/MANIFEST.MF within a .jar file.

The Jar Manifest specification can be found here http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#JAR_Manifest

METHODS ^

Load($string)
    use Jar::Manifest qw(Load);
    use Data::Dumper;

    my $manifest = Load($string);
    print Dumper $manifest;

Read the manifest contents in $string. Returns a hash-reference containing two keys. The main key is another hash-reference to the main attributes and corresponding values. The entries key is an array-ref of hashes containing per-entry attributes and the corresponding values

Dump($manifest)
    print Dump($manifest);

Turns the $manifest data structure into a string that can be printed to a MANIFEST.MF file. The $manifest structure is expected to be in the same format as the Load() output.

DEPENDENCIES ^

Encode

Text::Wrap

BUGS AND LIMITATIONS ^

Please report any bugs or feature requests to bug-jar-manifest@rt.cpan.org, or through the web interface at http://rt.cpan.org/Public/Dist/Display.html?Name=Jar-Manifest

AUTHOR ^

Mithun Ayachit mithun@cpan.org

LICENSE AND COPYRIGHT ^

Copyright (c) 2012, Mithun Ayachit. All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.

syntax highlighting: