2012-09-17 3 views
1

Catalyst 5.8과 함께 작동하는 클라이언트의 Catalyst 응용 프로그램을 테스트하려고하는데, Catalyst 5.9에 심각한 문제가 있습니다.동일한 시스템/응용 프로그램에서 두 버전의 Catalyst를 사용하여 테스트합니다.

응용 프로그램 [복잡하고 지저분한 설치도]가 Catalyst 5.8으로 실행되는 테스트 시스템에서이 작업을 수행해야합니다.

앞뒤로 전환하는 깨끗한 방법이 있는지 궁금합니다.

예를 들어 사용자 정의 디렉토리에 5.9를 설치하려면 Catalyst::Runtime '5.80'; 또는 use Catalyst::Runtime '5.90';을 사용하고 @INC을 전환하십시오.

그러나 일부 변경 사항으로 인해 응용 프로그램을 5.9 용으로 다시 빌드해야 할 수도 있습니다.

저는 환경에 많은 변화를 줄 수는 없지만 그것은 제 시스템이 아니므로 구현 문제와 코딩 문제입니다.

이 환영에 대한 모든 논평, 나는 촉매 전문가가 아니므로이 작업을 수행하는 간단한 방법이 필요합니다.

+0

을 설치하는'모듈 VERSION' 당신이 생각하는 일을되지 않을 수 있습니다 사용합니다. 그것이하는 일은 보통 장소에서'Module'을 읽어 들이고, 버전이 적어도 VERSION이 아니면 croak입니다. 모듈의 특정 버전을로드하려면,'@ INC'를 조작하고 싶을 것입니다. – mob

+0

슬프고 진실한 [!] 그리고 저에게 생각 나게 해 주셔서 감사합니다. –

답변

2

사용 local::lib 다른 촉매 버전

+0

감사합니다. 시스템 관리자에게 물어볼 게 있습니다 만, 방법 일 수 있습니다. 불행히도, 나는 또한 주위에 출격해야하고 이미 거기에 무엇을 볼거야 ... –

+0

@ 줄리아, 예, 이것은 가능한 감사합니다. 로컬 컴퓨터에서 클라이언트의 원격 컴퓨터에 대한 '리허설'을 시도했습니다. ~/local_perl/lib/perl5 /에 local :: lib를 통해 새로운 Catalyst가 설치되어있는 경우 (아마 설치 접두사를 사용했을 수도 있음) Apache 시작시 preload-modules 스크립트를 실행할 때 경로가 미리 추가됩니다. 로깅은 Catalyst가 '로컬'버전으로 올라가고 있음을 보여줍니다. –