5

Spring component-scan でパッケージが見つかりません。プロジェクト ディレクトリに問題があると思います。Intellij Idea を使用しています。

私のapplicationContext.xml

 <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:context="http://www.springframework.org/schema/context"
   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<context:component-scan base-package="" />

私のディレクトリ;

ここに画像の説明を入力

4

2 に答える 2

6

ところで、あなたの Maven プロジェクト構造は正しくありません。これが、IntelliJ が Java パッケージを通常のディレクトリとして表示する理由です。Maven の標準ディレクトリ レイアウトに基づいて、src/main/java. したがって、プロジェクト構造は次のようになります。

 src
 |- main
    |- java
       |- tr
          |- source
             |- beans
    |- resources
    |- webapps
       |- ...

これで、 を作成するsrc/main/javaと、IntelliJ はjavaディレクトリを通常のディレクトリ (オレンジ色のディレクトリ アイコンで表示) として扱います。javaソース ディレクトリ (青いディレクトリ アイコン) にするには、IntelliJ のプロジェクト構造に移動し、ディレクトリをソース ディレクトリとして追加します。次のように表示されるはずです:-

ここに画像の説明を入力

が青いディレクトリ アイコンになったらsrc/main/java、スキャンするベース パッケージが であると仮定してtr、Spring XML 構成に移動し、この行を次のように変更します。

 <context:component-scan base-package="tr"/>
于 2013-10-20T13:38:27.203 に答える
1

クラスパス パッケージをスキャンするには、クラスパスに対応するディレクトリ エントリが存在する必要があります。またautodetectbeans対応する Bean を登録するには、以下を含める必要があります。

<context:component-scan base-package="com.example"/>

base-packageクラスのパッケージはどこになりますか。したがって、パッケージtr.sourceとそのサブパッケージで定義された Bean を見つけるには、次のように定義する必要がありますbase-package

<context:component-scan base-package="main.tr.source"/>
于 2013-10-20T11:40:08.983 に答える