[英]Install CPAN modules from a local mirror without CPAN::Mini
在我公司的某些计算机中,只有IE可以访问Internet。 因此,我想知道是否可以在本地镜像中具有某些CPAN模块的本地副本。 我听说过CPAN::Mini
模块,它可以将本地镜像与公共镜像同步。
如何使用IE在我的镜像中手动下载所需的模块,并将cpan
配置为在本地查找模块?
编辑
我无法使用CPAN :: Mini或其他类似工具,因为只有IE才能访问互联网。 我首先需要通过IE复制镜像。
如果只需要CPAN的局部镜像,则可以使用OrePAN2轻松实现 。
orepan2-inject --simple Module::Name /path/to/darkpan/
这还将为您生成02packages文件,CPAN客户端可以读取该文件。
orepan2-inject --simple Carton darkpan
Wrote 1 from Carton
[INFO] Could not find useful meta from 'darkpan/authors/id/D/DU/DUMMY/Carton- v1.0.12.tar.gz'
[INFO] Scanning for provided modules...
/tmp/foo ∙ tree darkpan/
darkpan/
├── authors
│ └── id
│ └── D
│ └── DU
│ └── DUMMY
│ └── Carton-v1.0.12.tar.gz
├── modules
│ └── 02packages.details.txt.gz
└── orepan2-cache.json
CPAN :: Mini使用LWP来获取文件。 问题的实质是这条简单的线:
my $res = $self->{__lwp}->mirror($remote_uri, $local_file);
那只是LWP :: UserAgent的mirror
。 提出使用IE代替的替代方法,也许使用Win32 :: OLE来驱动IE,然后就可以了。 CPAN :: Mini可以为获取文件使用一些依赖注入。
曾经有一个名为Win32 :: Mechanize :: IE的工具,但是它停止使用新的IE8安全模块 。
或者,我将探索使内部LWP对象看起来像IE的方法。 我不知道您的代理或网络的详细信息,但是我敢打赌,您可以从LWP中伪造一些魔术头或设置。 例如,参见HTTPS Proxy和LWP :: UserAgent 。 我必须相信,不仅仅是IE可以访问互联网。
作为最后的努力,尽一切力量将啤酒带到Windows管理员。 交个朋友并保存一些编码。 :)
如果没有发现源已被Dist :: Zilla废话弄乱了,我可能已经完成了依赖项注入工作。 我从不特别在乎人们使用什么工具,只要他们不强迫我使用相同的工具,并且文字源代码不依赖于外部工具的要求即可。
人们意识到,通过使协作的障碍变得如此之高,人们正在放弃参加酷炫儿童餐桌的席位。 我只是对此感到make异,因为我认为人们没有意识到这一折衷。 当他们决定不帮助时,没有人告诉您。 他们只是无济于事,您不会意识到您已经放弃了他们本可以付出的所有时间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.