質問

クラスが圧縮された.warファイルからロードされるか、他の場所にロードされると仮定します。 特定のパッケージ内のすべてのリソースを見つけるにはどうすればよいですか?これはwarファイルであるため、ファイルの列挙は実際には機能しません。ほとんどの場合、これには現在のクラスローダーを使用する必要がありますか?

そのようなことをするライブラリはありますか?グーグルは、ファイルをリストするハッキングのみを明らかにしました。

役に立ちましたか?

解決

いいえ、JVMは単にどのリソースがどのパッケージに含まれているかを知らないため、パッケージのリソースをリストすることはできません。 こちらをご覧ください質問

他のヒント

はい。 ClassLoader.getResources("");

を使用できます または、フェレットAPIを使用できます。
https://www.ohloh.net/p/pureperfect-ferret

このAPIを使用すると、Visitorパターンを使用して、クラスパスと任意のアーカイブおよびディレクトリをスキャンできます。

Spring Frameworkは、 PathMatchingResourcePatternResolver 。このクラスを使用すると、ワイルドカードを使用してAntスタイルのパスを指定でき、関連するリソースが見つかります(クラスパス上のフォルダーとjarを検索します)。

これを行います: -パッケージ化する前に、 ls myResources / *。ext> myResources / list.txt -次に、最初にファイルを読む

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top