JSON/RPC/Client.pm 丢失 - Fedora 17

Posted

技术标签:

【中文标题】JSON/RPC/Client.pm 丢失 - Fedora 17【英文标题】:JSON/RPC/Client.pm Missing - Fedora 17 【发布时间】:2013-02-08 15:11:17 【问题描述】:

我想使用 Zabbix API 运行 JSON 请求,但我收到以下错误:

Can't locate JSON/RPC/Client.pm in @INC (@INC contains: /usr/local/lib64/perl5 
/usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl                 
/usr/lib64/perl5 /usr/share/perl5 .) at ./test.perl line 6.

我正在使用 Fedora 17,但找不到名为:libjson-rpc-perl 的包。我已经安装了以下软件包:

perl-CGI-Application-Plugin-JSON.noarch                                          1.02-   5.fc17                                                            fedora                      
perl-Catalyst-View-JSON.noarch                                                   0.30-5.fc17                                                            fedora                      
perl-JSON-Any.noarch                                                             1.29-1.fc17                                                            fedora                      
perl-JSON-Any-tests.noarch                                                       1.29-1.fc17                                                            fedora                      
perl-JSON-PP.noarch                                                              2.27200-3.fc17                                                         fedora                      
perl-JSON-Path.noarch                                                            0.101-2.fc17                                                           fedora                      
perl-JSON-RPC-Daemon.noarch                                                      1.03-2.fc17                                                            updates                     
perl-JSON-RPC-legacy.noarch                                                      1.01-2.fc17                                                            fedora                      
perl-JSON-RPC-legacy-server.noarch                                               1.01-2.fc17                                                            fedora                      
perl-JSON-Util.noarch                                                            0.05-3.fc17                                                            fedora                      
perl-JSON-XS.x86_64                                                              1:2.32-1.fc17                                                          fedora                      
perl-JSON-XS-tests.x86_64                                                        1:2.32-1.fc17                                                          fedora                      
perl-JSON-tests.noarch                                                           2.53-4.fc17                                                            fedora                      
perl-MooseX-Types-JSON.noarch                                                    0.02-7.fc17                                                            fedora                      
perl-MooseX-Types-JSON-tests.noarch                                              0.02-7.fc17                                                            fedora                      
perl-Test-CPAN-Meta-JSON.noarch                                                  0.13-1.fc17                                                            fedora                      
perl-Test-JSON.noarch                                                            0.11-6.fc17                                                            fedora                      
perl-Test-JSON-tests.noarch                                                      0.11-6.fc17                                                            fedora                      

我现在不知道该怎么办?可以请教吗?

提前致谢,

【问题讨论】:

【参考方案1】:

在您的代码中:

use JSON::RPC::Legacy::Client; 

还有变化:

my $client     = new JSON::RPC::Legacy::Client;

【讨论】:

【参考方案2】:

使用CPAN 安装 JSON::RPC。这通常是简单的程序。还有一个工具可以将 CPAN 发行版转换为 rpm,但您可能会发现 cpan 更易于处理,无需额外的转换步骤。

【讨论】:

我已经安装了 CPAN,然后下载了 JSON::RPC 包,但还是不行: 安装过程中 JSON/RPC/Client.pm 处没有引用。【参考方案3】:

一般来说,在 Fedora(以及 Red Hat 世界中的任何其他地方)中,如果您不知道哪个包包含您需要的模块,您可以运行:

% yum install 'perl(Module::Name)'

在这种情况下,那就是:

% yum install 'perl(JSON::RPC::Client)'

【讨论】:

【参考方案4】:

JSON::RPC::Client 由旧版本的 JSON-RPC 提供。 JSON-RPC 1.00 版打破了与以前版本的向后兼容性,不再包含该模块。您必须安装旧版本才能使此代码正常工作(或更新代码以使用新 API)。你可以得到JSON-RPC 0.96 (the last compatible version) here。

您可以install the old version in a private location 仅此代码。

【讨论】:

我在这里得到它:link

以上是关于JSON/RPC/Client.pm 丢失 - Fedora 17的主要内容,如果未能解决你的问题,请参考以下文章

小米游戏本F盘丢失怎么办?

F#:算术运算符和多态性丢失(值限制?)

5.异常丢失

java丢失精度问题

linux分区后原有的数据会丢失吗?

向svn添加丢失的文件