Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

Java::Build
a family of modules which you can use instead of Ant

Java::Build - a family of modules which you can use instead of Ant


NAME

Java::Build - a family of modules which you can use instead of Ant


SYNOPSIS


    use Java::Build::JVM;  # access to the javac compiler in one jvm

    use Java::Build::Tasks;  # some helpful methods similar to Ant tasks

    my $source_files = build_file_list(

        BASE_DIR         => $some_path,

        INCLUDE_PATTERNS => [ qr/\.java$/ ],

    );

    my $dirty_sources = what_needs_compiling(

        SOURCE_FILE_LIST => $source_files,

    );

    if (@$dirty_sources) {

        my $compiler = Java::Ant::JVM->getCompiler();

        $compiler->destination($base_dir);

        $compiler->classpath($base_dir);

        $compiler->compile($dirty_sources);

        my $class_files = build_file_list(

                BASE_DIR         => $some_path,

                INCLUDE_PATTERNS => [ qr/\.class$/ ],

                EXCLUDE_PATTERNS => [ qr/Test/ ],

                EXCLUDE_DEFAULTS => 1,

                STRIP_BASE_DIR   => 1,

        );

        jar(

            JAR_FILE  => $jar_file_name,

            FILE_LIST => $class_files,

            BASE_DIR  => $some_path,

       );

    }


ABSTRACT


  This family of modules helped me move away from Ant to a proper scripting

  language, namely Perl.  With it you can use a single JVM for compiling

  your java programs.  It provides many useful methods to help you build

  lists of files, package them with jar, etc.  Currently the modules are

  unix centric.  If you make them work elsewhere, please send in patches.


DESCRIPTION

With the modules in this distribution, you can aviod Ant. This gives you the following benefits:

  • Variables instead of properties.

  • Flow of control structures.

  • The ability to write functions.

  • Cleaner build files (you don't have to code in XML)

  • All the other benefits of Perl (CPAN, regexes, etc.)


SEE ALSO

You will need to install recent versions of Inline and Inline::Java.

See Java::Build::JVM and Java::Build::Tasks for more details about their methods.


REQUIRES


  Inline

  Inline::Java

  Carp;

  File::Find;

  Cwd;

  File::Temp;

  Exporter;


AUTHOR

Phil Crow, <philcrow2000@yahoo.com


COPYRIGHT AND LICENSE

Copyright 2003 by Phil Crow

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

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy