簡體   English   中英

如何更改perl cpan存儲庫位置

[英]How to change the perl cpan repository location

當我使用cpan來安裝模塊時,有一個非常不穩定且速度慢的下載源,我可能想在許多機器上安裝該模塊?

是否可以將perl模塊存儲庫更改為其他地址,或將存儲庫復制到本地磁盤。

或者,我們可以在使用cpan時將本地模塊文件保存到本地。 似乎cpan會在安裝后刪除它。

是否可以將perl模塊存儲庫更改為其他地址

您可以通過運行CPAN shell來重新配置cpan(並更改鏡像):

perl -MCPAN -eshell

然后輸入:

o conf init

或將存儲庫復制到本地磁盤。

CPAN Mini是常用的工具。

cpanm (稱為“cpanminus”)是Perl模塊非常流行的替代安裝程序。 使用cpanm,您可以使用--mirror選項將其指向不同的存儲庫URL。 我相信cpanm還可以為您安裝的所有模塊創建本地緩存,以便以后更快地訪問。

Pinto是在本地磁盤上創建類似CPAN的存儲庫的另一種選擇。 但是,它希望成為管理Perl模塊的更“完整”的解決方案。 所以它可能比你正在尋找的更多。

您可以設置CPAN :: Mini存儲庫。 您需要安裝CPAN::Mini ,並提供配置文件.minicpanrc 我的很短:

# contents of .minicpanrc in home directory
local: /home/ebaudrez/mirrors/minicpan
remote: http://cpan.cu.be/

顯然,您需要將其調整到您的安裝。 您可以在此處找到CPAN鏡像列表。 然后你必須通過調用創建本地鏡像

minicpan

注意:這是第一次,這需要相當長的時間。 預計會消耗幾千兆字節的存儲空間。 后續調用會更快。 它發現每天多次調用它是沒有意義的。 另請注意,僅保留分發的最后一個版本,舊的或已刪除的分發將從本地存儲庫中刪除。

最后,您可以告訴cpanm優先使用您的鏡像,並且只有當您在本地鏡像中找不到您所使用的特定發行版或版本時才會失敗回到真正的CPAN:

PERL_CPANM_OPT="--mirror $HOME/mirrors/minicpan --mirror http://search.cpan.org/CPAN"

也可以配置CPAN或CPANPLUS來使用你的鏡像,但我發現這樣做稍微不方便,而且無論如何都更喜歡cpanminus。

現在您可以使用cpanm安裝所需的任何發行版/版本,例如,

cpanm Dist::Zilla; # enjoy as the dependencies fly by ;-)

或者說,PDL版本2.006(注意:撰寫本文時的最新版本是2.007 ;-))

cpanm PDL@2.006 # note: that is new syntax since cpanminus 1.6

如果可用,將使用本地鏡像中的內容。 全球CPAN將用於后備。

我很驚訝沒有人添加如何編輯默認的CPAN配置。 與編輯小文本文件相比,使用CPAN shell執行此操作非常瘋狂。

這是怎么做的:

  1. 從官方CPAN鏡像列表中選擇一些CPAN鏡像。
  2. 找到您的CPAN配置,通常在:
    $HOME/.cpan/CPAN/MyConfig.pm
    (如果不存在,則搜索文件: MyConfig.pm 。)
  3. 編輯名為urllist的列表項,並將其添加到其中。
'urllist' => [
    q[http://httpupdate3.cpanel.net/CPAN/], 
    q[http://mirrors.servercentral.net/CPAN/], 
    q[ftp://cpan.cse.msu.edu/]
],

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM