-1

私はPerlbrewを使ってPerlをインストールしています。ビルドスクリプトでは、ターゲットフォルダー内のすべての依存関係をコピーし、tarボールを作成しています。このターゲットフォルダには、インストールされているbinフォルダもあります。しかし、これはperlの正確なパス位置を取得していることを証明しています。

このタールボールをコピーして、別のボックスでアンタールします。このターゲットフォルダービンを使用する別のビルドスクリプトは、パスと実行中の証明です。Proveには正確なパスの場所があり、このパスはこのボックスでは使用できないため、例外がスローされます。

#!/var/local/maria/hudson/workspace/pigeon-environment/perlbrew/perls/perl-5.14.2/bin/perl
eval 'exec /var/local/maria/hudson/workspace/pigeon-environment/perlbrew/perls/perl-5.14.2/bin/perl -S $0 ${1+"$@"}' 

ただし、このパスは次のようになります。

#!$PWD/target/bin/perl

誰かが相対的なパスで証明を作成してください。

4

1 に答える 1

1

-e フラグを使用すると、使用したいインタープリターへのパスを指定できます。

prove -e /path/to/perl t/my-test.t

その他のフラグなどについては、「prove --help」を参照してください。

于 2012-10-26T18:12:39.653 に答える