2009-08-21 52 views
2

什麼是從螞蟻執行pPerl腳本的最平臺的方式?什麼是從Ant執行Perl腳本的最跨平臺的方式?

Windows不喜歡Perl腳本作爲可執行文件。除了使用特定於操作系統的可執行文件並將Perl腳本作爲參數傳遞之外,還有其他什麼方法嗎?

+0

您使用哪個perl?你如何在Ant中指定它?你得到的錯誤是什麼? – 2009-08-21 22:17:00

+0

對於Windows, 這是perl的,v5.8.9專爲MSWin32 86多線程 (12個註冊補丁,看到的perl-V的更詳細) 版權所有1987-2008,Larry Wall的 二進制編譯826 [290470]由ActiveState提供http://www.ActiveState.com 內置2009年5月24日09:21:0我 我想只是指定perl腳本作爲可執行文件,因爲unix使用#!而windows有.pl擴展名綁定。 Gambit 2009-08-25 14:06:34

回答

1

你試過致電Perl的創建定製Ant目標(姑且稱之爲call-perl-script),以及任務切換到另一個子任務的實現基於OS(如call-perl-script-windowscall-perl-script-osx等)?

基於this previous questionthisthis

+0

我試圖不做特定的os檢查。 – Gambit 2009-08-25 14:07:14

+1

沒有辦法繞過它。如果您希望您的Ant目標在不同的平臺上工作,那麼當涉及到特定於平臺的功能(如啓動進程)時,您必須在某個時間編寫特定於平臺的代碼。我的建議是把它包裝得很好。 – 2009-08-25 19:04:37

2

你有沒有考慮過螞蟻<exec>命令?您可以使用os屬性來指定要使用的操作系統。

問題在於您需要針對每個已知操作系統使用Perl腳本的具體調用。無論如何,它可能更安全地進行os檢查。

0

Windows不喜歡Perl腳本作爲可執行文件。

要麼你將Windows配置爲執行.pl文件(幫助FTYPE,幫助締合)

ftype PerlScript=perl.exe %1 %* 
assoc .pl=PerlScript 

,或者你通過pl2bat運行腳本(自動發生,如果你使用的ExtUtils :: MakeMaker的安裝腳本) 。如果您使用pl2bat,請檢查生成的文件並確保您對結果滿意。

您還可以使用PAR/pp創建一個.exe

相關問題