Perl 安装Inline 和 Inline Java模组(windows)

前言

Perl 安装及模组安装方法【windows】

这一篇中, 介绍了安装模组的几种方法。

使用PPM来安装应该是最简单的。因为PPM 会自动帮我们找到依赖项, 并进行安装。

但是实际状况却并非想象的那么完美。


本地安装的状况

目标: 想在本地安装inline 和 inline java 模组, 这样就可以在perl 里面写Java 的代码了。

本地安装的perl 版本: ActivePerl-5.18


动作:

1. 添加所有在上一篇中介绍到的资源库。

2. inline 模组和inline java 模组都可以找到了。

3. 先点击 安装inline, 报 

“ERROR: 401 Authorization Required” 的错误。 看上去是下载关联包时出现的错误。 


解决思路之一:  是否是因为 perl 的版本太高了。

因为从PPM 上看inline 的版本都比较低。

重新安装perl ,版本: ActivePerl-5.10

结果还是失败。

看来只能手动安装模组了。


解决思路之二: 手动安装inline模组

下载 inline 模组包, 手动安装。

可以看出 inline 依赖于

Inline depends on Test-Warn
Inline depends on Parse-RecDescent

Inline depends on Carp
Inline depends on Tree-DAG_Node


但是在安装以下两个的时候, 还是会出错

Inline depends on Test-Warn
Inline depends on Parse-RecDescent


解决思路之二(继续): 手动安装inline 的依赖模组Test-Warn  和 Parse-RecDescent 。

安装过程会报ExtUtils-MakeMaker 的版本低了的错误。

ExtUtils::MakeMaker version 6.62 required--this is only version 6.55_02 at

下载一个MakeMaker 的高版本进行安装。


 终于可以了:

use Inline Java => <<'END_OF_JAVA_CODE' ;
      class Pod_alu {
         public Pod_alu(){
         }

         public int add(int i, int j){
            return i + j ;
         }

         public int subtract(int i, int j){
            return i - j ;
         }
      }
END_OF_JAVA_CODE

my $alu = new Pod_alu() ;
print($alu->add(9, 16) . "\n") ; # prints 25
print($alu->subtract(9, 16) . "\n") ; # prints -7

运行正常了。



说明

1. PPM  里面添加的资源库网站 里面是提供了一些已经编译好了模块。所以手动安装的话, 需要执行 make(nmake )命令先编译。


介绍一些模块

1. padwalker

如果要在eclipse (EPIC)中debug perl 的代码的话, 需要安装这个模块。

资源库: http://www.bribes.org/perl/ppm


和Java 相关的模块。

模块名称

描述

JAVA

这个模块提供一个框架,用于开启本地JAVA虚拟机(JVM)或者连接到远程JAVA 虚拟机。它包括对虚拟机本地化、对象创建、方法引用、事件循环监测和异常的支持。

Inline::JAVA

这个模块是JAVA开发人员转到perl的最有用的模块之一。因为它允许JAVA开发人员将JAVA代码嵌入到perl 脚本,然后这一代码在需要时通过perl解释器自动编译和引用。这个模块包括对环境变量、类型、共享虚拟机、数组、对象和异常的支持。

当你需要将JAVA代码直接嵌入到perl脚本时,使用该模块。

JAVA::Import

这个模块使得可以从perl中很容易的引用和访问JAVA类。它包括调用静态方法,传递参数和处理返回值,同基于JAVA的数据结构一起工作,处理异常等功能。

当你需要从perl脚本访问JAVA类时需要这个模块。

JAVA::Build

这一模块提供了对于传统JAVA构建工具Ant的替代,它包含了perl脚本编辑工具和标准JAVA构建/打包工具集。

当你要求对JAVA类的构建/打包过程进行更有力的控制时,需要使用该模块。

JAVA::Swing

这个Swing工具集提供JAVA应用中的复杂GUI控制(工具条、按钮、单选框)。这个模块对于Swing API调用提供了一个基于对象的接口,它包括对于扩展组件,监听器和其它包装器的支持。

当你需要通过perl访问JAVA Swing功能时,使用该模块。

JDBC

这一模块利用JDBC提供了一个对各种数据库系统的接口,它包括对数据库连接、执行查询和结果返回、准备语句和错误处理等提供支持。

当你需要通过JDBC“管道”(可能使用一个定制的JDBC驱动类)连接到关系型数据库管理系统时,需要使用该模块。

JAVA::SJ

这个模块提供一个框架用于定制JAVA虚拟机配置,使得可以同时运行多个虚拟机,每个有一个不同的开始配置和服务任务。配置信息使用XML表达。

当你需要在同一台机器上同时运行多个JAVA虚拟机时,需要使用该模块。

JAVA::JVM::Classfile

这个模块用来读取和解析JVM的字节码文件,以及在字节码文件中作为一系列对象来表达信息。提供大量查看特定信息(例如类方法,属性和可见性等)的方法。

使用该模块恢复在JVM字节码文件中定义的关于对象和类的详细信息。

Template::Plugin::JAVA

这一模块提供一个框架,用于在XML中描述JAVA类,然后将这些XML描述转变为JAVA源代码。这些XML描述可能包括对变量和方法的描述,还包括对类型和数组的支持。支持两种操作模式:命令行和嵌入到一个模板中。

当你需要以一种标准,容易解析的格式创建类模板时,可以使用该模块,还可以用于其他平台。

JAVA::JCR::Jackrabbit

这一模块使得很容易的通过perl连接和操纵jackrabbit内容库(JCR),它包括对自定义节点的支持。当你需要访问jackrabbit内容库时,可以使用该模块。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

oscar999

送以玫瑰,手留余香

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值