10.5. Arrays für Java-varargs

Fehlermeldung

# died: Wrong number of arguments at C:/Perl64/site/lib/Inline/Java/Object.pm line 107.

Erklärung

Ein Java-Methode kann eine variable Anzahl an Parametern haben. An solche Methoden muss Perl ein Array übergeben.

Beispiel mit Fehler

lives_ok {
  my $pdfUnderTest = "$resources_dir/doc-under-test.pdf";
  my $pages134 = PagesToUse->getPages(1, 3, 4);      #  syntax error
  AssertThat->document($pdfUnderTest)
            ->restrictedTo($pages134)
            ->hasText()
  ;
} "typical error, no array for Java varargs";

Beispiel ohne Fehler

lives_ok {
  my $pdfUnderTest = "$resources_dir/doc-under-test.pdf";
  my $pages134 = PagesToUse->getPages([1, 3, 4]);    # ok
  AssertThat->document($pdfUnderTest)
            ->restrictedTo($pages134)
            ->hasText()
  ;
} "no error, array used for Java varargs";