Ich habe einen einfachen Talend-Perl-Job erstellt, um Daten aus einer Excel-Datei zu extrahieren und in eine MySQL-Tabelle zu schreiben. Das funktioniert gut, wenn ich es in Talend Studio 4.1.1 starte.Fehlende Dateien beim Ausführen eines Talend-Perl-Jobs über die Befehlszeile
Das Problem ist, wenn ich den Job exportieren. Ich versuche es wie so zu laufen:
perl -Ilib proj.job_import_prods_0.1.pl --context = Default --context_param file_path = "/ home/antoniocs/Programmierung/file.xls" $ *
Das gibt mir die folgenden Fehler:
Kann nicht IO/Scalar.pm in @INC (@INC enthält orten: /home/antoniocs/Programmierung/lib /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5/usr/teilen/perl5 /usr/lib/perl /5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl) bei lib/OLE/Storage_Lite.pm Linie 171. BEGIN fehlgeschlagen -. compilation bei lib abgebrochen/OLE/Storage_Lite.pm Linie 171. Compilation fehlgeschlagen erfordert in bei lib/Kalkulationstabelle/ParseExcel.pm Zeile 18 BEGIN fehlgeschlagen - Kompilierung abgebrochen bei lib/Kalkulationstabelle/ParseExcel.pm Leitung 18 Compilation fehlgeschlagen erfordert in bei proj.job_import_prods_0. 1.pl Zeile 568. BEGIN gescheitert - compilatio n abgebrochen bei proj.job_import_prods_0.1.pl Linie 568.
Ich habe bereits die ParseExcel.pm int Ordner lib im Ordner des Auftrags gestellt. Gibt es keine Möglichkeit, dass Talend automatisch die notwendigen Dateien zum Ordner des Jobs hinzufügt?
HINWEIS: Beim Exportieren des Jobs habe ich das Kontrollkästchen "Exportabhängigkeiten" aktiviert. EXTRA HINWEIS: Ich bin kein Perl-Programmierer.
Das Modul 'IO :: Scalar' lebt in der Distribution [IO-stringy] (http://search.cpan.org/dist/IO-stringy/), daher ist der RPM-Name [perl-IO-stryty] (http://www.rpmfind.net/linux/rpm2html/search.php?query=perl-IO-stringy) und der Deb-Name lautet [libio-silly-perl] (http://packages.debian.org/ de/sid/libio-stringy-perl). – daxim
Danke! Die Akten waren alle in Talendir.Ich habe sie einfach in den job lib-Ordner kopiert und es hat alles super funktioniert :) Nochmals vielen Dank (ich habe das auch im Talend-Forum gepostet und niemand hat darauf geantwortet. GO STACKOVERFLOW) – AntonioCS