問題タブ [reflections]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - WAR ファイル内の JAR からクラスパスを構築する
特定の WAR ファイルから構成を動的に抽出しようとしています。私の目標は、何らかのインターフェース ( ) を実装するすべてのクラスを見つけることParameter
です。
war ファイルはクラスパスにないため、そのクラスを検査する一時的なクラスローダーを作成します。
これはうまくいきます。Parameter
私の webappでのすべての実装を見つけます。
ここで、 に存在する各 jar に対して同じことを行いたいと思いますWEB-INF/lib
。残念ながら、その場合にクラスローダーを構築する方法が見つかりませんでした。クラスローダはjar URLを無視しているようです( jar:<url>!/WEB-INF/lib/{entry}.jar
)。
以下のコードを実行すると、Reflectionsによってクラスが見つかりません。
WEB-INF/lib/*.jar
可能であれば、WAR ファイルから抽出して個別に分析する必要は避けたいと考えています。
ここで何か不足していますか?(他の方法、クラスローダーを作成する他の方法、...リードが役立ちます)。Reflections ライブラリを使用せずにこれを行うことができますか?
scala - Scala でアノテーション付きクラスを取得する方法
Java ではorg.reflections
、パッケージのスキャンと注釈付きクラスの検索に使用できます。
このような:
scalaで注釈付きのクラスを取得するには? と を使用scala 2.11
しscala-reflect
ます。
PSorg.reflections
はscalaでうまく機能しますが、ネイティブインストゥルメントを検索します。
groovy - Reflections.collect() が Groovy スクリプトから機能するために提供する必要のあるドライバーは何ですか?
私はスクラッチコードの次のスニペットを持っています
次の例外をスローします。
グーグルで検索するとorg.xml.sax.SAXException: Can't create default XMLReader; is system property org.xml.sax.driver set?
、主にAndroidに関する質問が表示されますが、リンクのみの回答またはコードベースの回答であり、正しいシステムプロパティ値を提供するという問題に実際には対処していません.
同じコードJava
は、同じ IDE プロジェクトのコードとして機能します。