Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 956 Categories, Downloaded 50.256.528 Times

PBJ::JNI 0.1

  Date Added: August 06, 2010  |  Visits: 1.204

PBJ::JNI

Report Broken Link
Printer Friendly Version


Product Homepage
Download (93 downloads)



PBJ::JNI is a Perl module with full access to and from Java virtual machine from Perl. SYNOPSIS use PBJ::JNI::JavaVM; my ($env, $jvm, @vm_opts); my ($cls, $fid, $mid, $out); # Create the Java VM @vm_opts = ("-Xrs", "-Xcheck:jni"); $jvm = new PBJ::JNI::JavaVM(); $env = $jvm->get_env(@vm_opts); $env->PushLocalFrame(16) == 0 or die; $cls = $env->FindClass("java/lang/System") or die; $fid = $env->GetStaticFieldID($cls, "out", "Ljava/io/PrintStream;") or die; $out = $env->GetStaticObjectField($cls, $fid) or die; $cls = $env->GetObjectClass($out) or die; $mid = $env->GetMethodID($cls, "println", "(I)V") or die; $env->CallVoidMethod($out, $mid, $env->cast("I", 12345)); $env->PopLocalFrame(0); WARNING This software is still in alpha stage. It may not be reliable and its features and APIs may change in the future releases. The PBJ::JNI package allows you to link with your Java virtual machine and directly access Java classes from Perl. It also allows a mechanism to create callbacks from Java program to Perl subroutines. The package focuses on providing a set of APIs that closely resemble the native JNI interface. This basically means that you can write an ordinary JNI program in Perl instead of in C or C++. This provides a quicker way to writing wrappers to invoke programs written in Java and therefore introduce Java libraries to the Perl without the trouble of writing low level C/C++ programs. You will need to know how JNI works in order to use this package. This package is by definition very primitive. If you dont understand thoroughly on how JNI works and try to use the feature of this package, you can easily crash your program or create memory leaks. So dont do that. It is my hope that somebody with proper skills in JNI and Perl can write wrappers for a set of popular Java libraries, such as JDBC, XML parser, JMS (that I am working on), and other useful Java packages so that a Perl programmer can use them directly in a pure Perl environment without knowing anything about JNI..

Requirements: No special requirements
Platforms: Linux
Keyword: Cls Full Access Java Java Virtual Java Virtual Machine Jni Machine Package Pbj Pbjjni Perl Perl Module To And From Virtual Virtual Machine
Users rating: 0/10

License: Freeware Size: 14.34 KB
USER REVIEWS
More Reviews or Write Review


PBJ::JNI RELATED
Libraries  -  Java::JVM::Classfile 0.19
Java::JVM::Classfile is a Perl module to parse JVM Classfiles. SYNOPSIS use Java::JVM::Classfile; my $c = Java::JVM::Classfile->new("HelloWorld.class"); print "Class: " . $c->class . "n"; print "Methods: " . scalar(@{$c->methods}) . "n";...
19.46 KB  
Libraries  -  Java::Import 0.03
Java::Import is Perl module to use Java classes in Perl. SYNOPSIS use Java::Import qw( some.package.SomeClass ); my $instance = new some.package.SomeClass(); $instance->someMethod(); my $ret_val =...
28.67 KB  
Libraries  -  Template::Plugin::JavaSQL 0.4
Template::Plugin::JavaSQL is a Perl module to help generate Java from database schemas. SYNOPSES Within an XML file processed by the Java plugin: or < sql: table="some_table"...
18.43 KB  
Libraries  -  Solaris::Kstat 0.05a
Solaris::Kstat is a Perl module to access Solaris Kstats from Perl. SYNOPSIS use Solaris::Kstat; my $kstat = Solaris::Kstat->new(); my ($usr1, $sys1, $wio1, $idle1) = @{$kstat->{cpu_stat}{0}{cpu_stat0}}{qw(user kernel wait idle)};...
24.58 KB  
Libraries  -  OpenOffice::OODoc::Meta 2.0.32
OpenOffice::OODoc::Meta is a Perl module to access document metadata. The OpenOffice::OODoc::Meta class is a specialist derivative of OpenOffice::OODoc::XPath for XML members which describe the metadata of OpenDocument (ODF) and OpenOffice.org...
215.04 KB  
Libraries  -  ODBM_File 5.8.8
ODBM_File is a Perl module to allow tied access to odbm files. SYNOPSIS use Fcntl; # For O_RDWR, O_CREAT, etc. use ODBM_File; # Now read and change the hash $h{newkey} = newvalue; print $h{oldkey}; ... untie %h; ODBM_File establishes...
12.2 MB  
Libraries  -  Search::Tools::RegExp::Keywords 0.06
Search::Tools::RegExp::Keywords is a Perl module to access regular expressions for keywords. SYNOPSIS my $regexp = Search::Tools::RegExp->new(); my $kw = $regexp->build(the quick brown fox); for my $w ($kw->keywords) { my $r = $kw->re(...
49.15 KB  
Libraries  -  Sys::Hostname::Long 1.4
Sys::Hostname::Long is a Perl module to try every conceivable way to get full hostname. SYNOPSIS use Sys::Hostname::Long; $host_long = hostname_long; How to get the host full name in perl on multiple operating systems (mac, windows, unix*...
5.12 KB  
Libraries  -  Net::BitTorrent::LibBT::Tracker 0.018
Net::BitTorrent::LibBT::Tracker is a Perl module to access a tracker running under libbttracker. SYNOPSIS use Net::BitTorrent::LibBT::Tracker; my $tracker = Net::BitTorrent::LibBT::Tracker->new("/path/to/tracker"); print "Tracker has ",...
21.5 KB  
Programming  -  Java State Machine Framework 1.0
This is java State Machine Framework for all OS platforms. The framework is for modeling any event processing system as a state machine. This aims to separate the state transition and event handling logic from the business logic and let developers...
2.96 MB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB  
Libraries  -  wolfSSL 4.0.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
3.88 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB