パッケージ org.opengion.fukurou.util

クラス FindClassFiles


  • public final class FindClassFiles
    extends java.lang.Object
    このクラスは、指定のディレクトリパスから .class ファイルを検索するクラスです。 検索パスは、実ファイルと、zipファイルの内部、jar ファイルの内部も含みます。 検索結果は、.class を取り除き、ファイルパスを、すべてドット(.)に変換した形式にします。 これは、ほとんどクラスのフルパス文字列に相当します。 ここで取得されたファイル名より、実クラスオブジェクトの作成が可能になります。 このクラスの main メソッドは、クラスパスから指定の名前を持つクラス以下のディレクトリより ファイルを検索します。通常、このクラスの使い方として、取得したクラスファイル名(文字列) から、引数なしコンストラクタを呼び出して、実オブジェクトを生成させるので、通常のフォルダ から検索するより、クラスパス内から検索するペースが多いため、サンプルをそのように設定 しています。
    機能分類
    初期化
    変更履歴:
    4.0.0.0 (2004/12/31) 新規作成
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの概要

      コンストラクタ 
      コンストラクタ 説明
      FindClassFiles​(java.lang.String filepath, java.lang.String keyword)
      検索パスを指定して構築する、コンストラクタです。
    • メソッドの概要

      すべてのメソッド staticメソッド インスタンス・メソッド concreteメソッド 
      修飾子とタイプ メソッド 説明
      java.lang.String[] getFilenames()
      ファイルパスを ドット(.)に置き換え、.class を取り除いた形式(クラスの完全系)の文字列配列。
      static void main​(java.lang.String[] args)
      サンプルメイン ここでは、引数に通常のファイルではなく、クラスパスより取得します。
      • クラスから継承されたメソッド java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • コンストラクタの詳細

      • FindClassFiles

        public FindClassFiles​(java.lang.String filepath,
                              java.lang.String keyword)
        検索パスを指定して構築する、コンストラクタです。 ここで見つかったパス以下の classファイル(拡張子は小文字で、.class )を検索します。 このファイル名は ファイルパスを ドット(.)に置き換え、.class を取り除いた格納しておきます。 ※ Tomcat8.0.3 では、ClassLoader の getResources(String)で取得するURL名が、 /C:/opengionV6/uap/webapps/gf/WEB-INF/classes/org/opengion/plugin/ の形式で、最後の "/" を取る為、filepath.length() - 1 処理していましたが、 Tomcat8.0.5 では、/C:/opengionV6/uap/webapps/gf/WEB-INF/classes/org/opengion/plugin の形式で、最後の "/" がなくなっています。 最後の "/" があってもなくても、new File(String) でディレクトリのオブジェクトを 作成できるため、filepath.length() に変更します。
        パラメータ:
        filepath - 対象となるファイル群を検索する、ファイルパス
        keyword - 検索対象ファイルのキーワード
        変更履歴:
        4.0.3.0 (2007/01/07) UNIXパス検索時の、ファイルパスの取得方法の不具合対応, 5.0.0.0 (2009/08/03) UNIXパス検索時の、ファイルパスの取得方法の不具合対応, 5.0.0.0 (2009/08/03) UNIXパス検索時の、ファイルパスの取得方法の不具合対応, 5.7.5.0 (2014/04/04) ファイル名の取得方法の修正
    • メソッドの詳細

      • getFilenames

        public java.lang.String[] getFilenames()
        ファイルパスを ドット(.)に置き換え、.class を取り除いた形式(クラスの完全系)の文字列配列。
        戻り値:
        ファイルパスの文字列配列
        このメソッドは、nullを返しません
      • main

        public static void main​(java.lang.String[] args)
        サンプルメイン ここでは、引数に通常のファイルではなく、クラスパスより取得します。 通常、取得されたファイル名は、クラスの完全系の文字列なので、クラスパスより取得 している限り、そのまま オブジェクトを構築できることを意味します。
        パラメータ:
        args - 引数
        変更履歴:
        6.8.5.1 (2018/01/15) ファイル名は、##バージョン番号を変換しておく必要がある。