問題タブ [component-scan]

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.

0 投票する
1 に答える
241 参照

java - スプリング コンポーネントのスキャン プロセスにロジックを挿入する

そのため、Spring が特定のパッケージで Bean をスキャンすることを使用<context:component-scan ...>または許可することができます。@ComponentScan("org.rythmengine.spring.web")問題は、スキャン プロセス中にロジックを挿入するにはどうすればよいかということです。Spring のスキャンを利用して、特定のインターフェイスを実装した、または特定の注釈で注釈が付けられたすべてのクラスを見つけたいとします。

0 投票する
4 に答える
32971 参照

spring - @ComponentScan またはたった1つのクラスで

私は 2 セットのメイン パッケージでプロジェクトを維持しています。プロジェクトは Spring と Spring MVC を使用しています。これらのパッケージの 1 つには複数のコントローラーが含まれており、XML 構成を使用してスキャンされます ( <context:component-scan />)。

問題は、他のパッケージに 1 つのクラス (スキャンされていない) があり、このクラスをスキャンする必要がありますが、パッケージにはこのクラスだけで他には何もないことです。今はリスクが高すぎるため、パッケージを変更することはできません。

注釈または XMLを使用してこれを行う方法はありますか?

0 投票する
2 に答える
4335 参照

java - Spring、コンポーネントスキャンが NamespaceHandler の周りで FatalBeanException を引き起こす

component-scan を使用すると、次の例外が発生します。

XML 構成は次のとおりです。

私が削除すると、component-scanevertyingはうまく解析されますが、明らかにこれは解決策ではありません. 問題の原因は何ですか?

Spring の古いバージョンがクラスパスにあることについてよく読んだことがありますが、そうではないことを確認できます。

${spring.version} が 3.2.5-RELEASE である私の依存関係は次のとおりです。

0 投票する
1 に答える
5918 参照

java - Spring: 各テストクラスの最後に @PreDestroy が呼び出されないのはなぜですか?

次のように注釈が付けられた統合テストクラスがあります

これが私のAppConfigurationです

何らかの理由で、すべてのテストの最後に@ComponentBeanが呼び出されません。ただし、テストが実行される前に、開始時に呼び出されます。@PreDestroyCacheConsumerTest@PostConstruct

誰が問題が何であるか知っていますか?私のいくつかは、@Component(@Predestroy を呼び出すことによって) 遮断したいバックグラウンド スレッドです。そうしないと、バックグラウンドで行う作業によって、他のテスト クラスでの後続のテストが失敗します。

追加しようとしまし@DirtiesContext(classMode=ClassMode.AFTER_CLASS) たが、役に立ちませんでした。

編集:問題を理解したので、DirtiesContext を機能させるために追加の手順を実行する必要がありました: Spring @DirtiesContext は Spring コンテキストをリロードしますか?

0 投票する
2 に答える
15364 参照

java - @ComponentScan が spring-boot-starter-test を使用したテストで機能しない

spring-boot-starter-test を使用してプロジェクト内のクラス@Serviceとクラスをテストしようとしていますが、テストしているクラスでは機能しません。@Repository@Autowired

単体テスト:

サービス:

単体テストのコメント付きのクラス注釈は、これを機能させるために私が試みたさまざまなことを表しています。テスト パッケージとプロジェクト パッケージは同じパッケージ パスにあり@ComponentScan、エントリ ポイント (@RestControllerメイン メソッドを持つクラス) から正常に動作します。私のクラスでは src/main/java 側の service@ComponentScanとは問題ありませんが、テストでは問題ありません。を機能させるには、クラスにとして再度追加する必要があります。それ以外の場合、クラスは問題なくスコープ内にあり、テストから問題なく参照およびインスタンス化できます。問題は、テスト ランナーのクラスパス (この場合は /target/test-classes と /target/classes) の複数のエントリを正しくトラバースしていないように見えることです。@Autowire@RestController@Bean@Configuration@Autowired@ComponentScan

私が使用している IDE は IntelliJ IDEA 13 です。

更新- ここに HelloWorldRs とその構成があります:

...

0 投票する
2 に答える
1658 参照

java - 実行可能なjarから外部Spring構成ファイルにアクセスする

以下は私のディレクトリ構造です

以下は、外部スプリング構成ファイルを読み取るための私のコードです

私のMANIFESTファイルには次のエントリがあります。

また、/app/infra/myjar/config フォルダーを指すように .bashrc の CLASSPATH 変数を設定しました

を使用してjarを実行しようとしているとき

次の例外が発生しています

ここで何がうまくいかないのか、どうすれば理解できますか?

0 投票する
2 に答える
1703 参照

spring - component-scan (Spring) の使用に関する問題 - 依存関係を注入しない

私は新しいアプリの開発を開始しており、いくつかのコード (プロトタイプ) を受け取りました。spring-servlet.xml がタグを使用していることに気付きました:

<context:component-scan...

以前にそのタグを使用したことがなく、非常に混乱しています。マッピングが機能していないため、一部の構成が欠落していると思います。

のように使えば

<context:component-scan base-package="my.app.mainpackage">、アプリはデプロイに失敗します

私がそれを次のように使用する場合:

<context:component-scan base-package="my.app.mainpackage.controller" />

コントローラーで @Autowired を使用しない限り、アプリはデプロイされますが (それ以外の場合はデプロイされません)、コントローラー パッケージの他のすべてのパッケージには依存関係が注入されません。

結局、私は依存関係を注入することができません!

サーバーログには、起動時のエラーが次のように表示されます。

web.xml

どんな助けでも大歓迎です。

前もって感謝します!

0 投票する
1 に答える
3989 参照

spring - component-scan は親プロジェクトでコンポーネントを見つけることができません

春の JPA ユーティリティ プロジェクトに依存する春の mvc プロジェクトがあります。

mvc プロジェクトは、Spring JPA プロジェクトでリポジトリ コンポーネントを見つけることができません。JPA プロジェクトを Java ビルド パスとデプロイメント アセンブリに含めました。JPA プロジェクトのアプリケーション コンテキストは MVC のクラスパスにあります。

MVC で使用できるようにするために、springJPA プロジェクトの Java ビルド パスで order and export を使用しています。JPA プロジェクト内のテスト ケースは正常に動作しますが、MVC 内のリポジトリにアクセスしようとすると、自動配線エラーが発生します。

ここに詳細があります。

MVC プロジェクトの web.xml

サーブレット コンテキスト

展開アセンブリ

展開アセンブリ

フォルダ構造

フォルダ構造

コンソールエラー