2016-06-17 8 views
1

После обновления кучи модулей CPAN, запущенный в этот код, больше не работает и бросает ошибку «Нечетное число аргументов в конструктор».Perl Image :: Imlib2 :: Thumbnail :: Scaled Неравномерное количество аргументов для конструктора

use Image::Imlib2::Thumbnail::Scaled; 
my $thumbnail= Image::Imlib2::Thumbnail::Scaled->new({ 
    sizes => [ 
    { width => 300, height => 300, name => 'large' }, 
    { width => 240, height => 240, name => 'medium' }, 
    { width => 150, height => 150, name => 'small' }, 
    ] 
}); 

ответ

1

Последняя версия изображения :: Imlib2 :: Thumbnail :: Чешуйчатый (0.05) изменили конструктор из версий 0.01/0.02/0.03/0.04, чтобы принять хэш и теперь терпит неудачу на hashref, поэтому любые предыдущие потребности кода для обновления, иначе он потерпит неудачу.

Ver +0,05 Документация: http://search.cpan.org/~srchulo/Image-Imlib2-Thumbnail-Scaled-0.05/lib/Image/Imlib2/Thumbnail/Scaled.pm

Ver +0,04 Документация: http://search.cpan.org/~srchulo/Image-Imlib2-Thumbnail-Scaled-0.04/lib/Image/Imlib2/Thumbnail/Scaled.pm

Чтобы исправить мою проблему:

my $thumbnail= Image::Imlib2::Thumbnail::Scaled->new({ 
    sizes => [ 
    { width => 300, height => 300, name => 'large' }, 
    { width => 240, height => 240, name => 'medium' }, 
    { width => 150, height => 150, name => 'small' }, 
    ] 
}); 

Изменен:

my $thumbnail= Image::Imlib2::Thumbnail::Scaled->new(
    sizes => [ 
    { width => 300, height => 300, name => 'large' }, 
    { width => 240, height => 240, name => 'medium' }, 
    { width => 150, height => 150, name => 'small' }, 
    ] 
); 

(Удалены { и})