2017-03-20 63 views
2

我最近將我的客戶端64位ActivePerl版本從版本5.10.1.1007升級到5.22.2.2203,並且遇到了很多問題。同時使用ActivePerl和草莓

我真的很想跳到草莓,但我必須首先在我每天運行的每個關鍵Perl應用程序上進行測試。

我是否可以安裝便攜式草莓版本並進行測試,同時繼續使用ActivePerl版本進行生產作業?

(其他計算器與我相似的問題收到有關服務器端的Perl只。答案)

+0

你確定草莓能解決你的問題嗎? ActiveState版本是一個質量好的版本。如果你的問題是Perl 5.22固有的問題(例如你需要的一些模塊與5.22不兼容),Strawberry Perl不會解決這個問題。我正在寫這篇文章是因爲有人認爲草莓作爲開源軟件就像魔術一樣可以解決世界上所有的問題,但事實並非如此。所以在切換之前,確保它值得! –

+0

我對可移植構建一無所知,但我安裝了多個ActivePerl和StrawberryPerl構建,沒有問題。只要確保你執行了「正確的」perl,cpan,cpanm,ppm等。 – ikegami

回答

2

你可以,你只要看你使用的perl的。只有一個可以在你的PATH中是「第一」。爲此,我建議將舊的perl作爲默認的,主要的。這對現有(生產)代碼的影響最小。

但是,您可以在您的PATH中使用不同名稱的輔助perl。例如,perl5.22.2.exe可能在您的PATH中,您可以在運行測試時使用它。

如果您有一個批處理文件或者類似於perl腳本的包裝器,您可以讓每個應用程序的批處理文件爲該應用程序運行正確的perl,並且您只需要a)重寫它使用的perl的方法,和b)讓它默認爲您希望使用的perl的測試級別。這樣你可以用5.22.2測試一段時間,但默認值仍然是5.10.1。然後,當您準備好切換應用程序時,您可以將默認值切換到5.22.2。

無論是客戶端還是服務器端都不會對此產生任何實際影響。 (而平臺並沒有太大的區別 - 雖然在unix/linux系統上的實際實現可能有點不同,但一般的想法並不是必須的,你可以同時安裝兩者時間,並根據應用程序的基礎管理應用程序使用哪個Perl。)

+0

這個問題的一個明顯問題是,由'pl2bat'創建的批處理文件依賴於'%PATH%'' 。 –

1

berrybrew的好處之一是,它允許您以管理方式安裝和使用任何Strawberry Portable版本,能夠隨時輕鬆切換回您的系統perl(在您的情況下是ActiveState)。

您可以從Github(上面的鏈接)安裝,也可以按照安裝說明通過zip文件安裝。

然後:

cd berrybrew 
bin\berrybrew.exe config 

關閉cmd窗口中,打開一個新的。

berrybrew install 5.24.1_64 
berrybrew switch 5.24.1_64 

打開新的cmd窗口

在你使用草莓便攜版本5.24.1這一點。要切換回的ActiveState:

berrybrew off 

要返回到berrybrew管理草莓實例,只是按照上面使用的開關命令。