2012-10-29 100 views
1

我從.pl文件創建了一個Perl模塊,現在正在測試它。它的工作原理,直到它需要使用另一個.pl文件(以拉出一些sql語句)。我使用require 'file.pl';來調用文件。這是一個臨時解決方案,因爲.pl文件將來會被更好的數據庫解決方案替代,但現在我需要測試我的模塊代碼。儘管我已經使用use lib '/path/to/file'將路徑名放在@INC中,但它不喜歡試圖找到該文件。我可以從perl中的模塊調用.pl文件嗎?

有沒有我可以用來解決這個問題的臨時解決方案?我不知道什麼時候.pl文件將被替換,所以我不能等待。我是否應該將sql語句移動到.pm文件中,即使我稍後必須刪除它們,還是必須搜索出模塊所在的文件夾,並在其中放入.pl文件的副本?

+0

注意,'.pl'通常用於與'package'文件,在這種情況下,你不應該使用'require'可言。你應該使用'do'/path/to/file.pl;'。 – ikegami

回答

5

您可以要求全路徑名:

require '/path/to/file.pl'; 
+0

這是有道理的,我應該考慮過之前,但它仍然認爲我從'.pl'文件調用的方法是我的模塊的一部分。是否有指定子程序的位置? (就像你怎麼可以做'使用模塊qw(sub_name)') – dgBP

+0

oooh認爲我已經整理了這個,我把這個文件放在一個包裏 - 刪除了那行,嘿,快!謝謝 :) – dgBP

相關問題