2011-02-07 13 views
1

内のモジュールを呼び出します。私は別のモジュールからモジュール内のメソッドを呼び出していますし、変なエラーを取得しています別のモジュール

require 'nmap' 
...  
module Enumeration::Hostnames 
    def reverse_dns ip_addrs 
    ... 
    ip_addrs.each do |ip_addr| 
     list = ListScan.test ip_addr #this is the problem 
     ... 
    end 
    ... 

ListScanはnmapファイルにあります。初期化されていない一定の列挙::ホスト名:: ListScan(NameError)ラインListScan.test IP_ADDR上:

module ListScan 
    def ListScan.test target 
    target = '-sL ' + target 
    ListScan::parse_results Nmap::Parser.parsescan('nmap',target) 
    end 
    ... 
    end 

エラーが `const_missing 'です。

は、なぜそれがListScanが列挙::ホスト名モジュールであると仮定していますか?ホスト名にListScanに混合すると、動作しませんでした。

答えて

1

ルビーは、この場合、Enumeration::Hostnamesで現在のコンテキストから始まる定数を検索します。

が働い

::ListScan.test ip_address 
+0

おかげで、使用してみてください。奇数のその種は、RubyのAPIにモジュールと、この問題がなかったです – David

関連する問題