2014-06-29 2 views
0

i essaie d'utiliser le cadre de printemps 3.2.9 qui est mon pom.xmlcadre de printemps 3.2.9 annotations

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
    http://maven.apache.org/maven-v4_0_0.xsd"> 

    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.mkyong.common</groupId> 
    <artifactId>3_2_9</artifactId> 
    <packaging>war</packaging> 
    <version>1.0-SNAPSHOT</version> 
    <name>3_2_9</name> 
    <url>http://maven.apache.org</url> 

    <dependencies> 

     <!-- Spring framework --> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-context</artifactId> 
      <version>3.2.9.RELEASE</version> 
     </dependency> 
    </dependencies> 

    <build> 
     <finalName>3_2_9</finalName> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <configuration> 
        <webXml>WebContent\WEB-INF\web.xml</webXml> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
</project> 

et j'ai 3 classes * bonjour/MessageService.java:

package hello; 

public interface MessageService { 
    String getMessage(); 
} 

* bonjour/MessagePrinter.java

package hello; 

import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.stereotype.Component; 

@Component 
public class MessagePrinter { 

    final private MessageService service; 

    @Autowired 
    public MessagePrinter(MessageService service) { 
     this.service = service; 
    } 

    public void printMessage() { 
     System.out.println(this.service.getMessage()); 
    } 
} 

* bonjour/Application.java

package hello; 

import org.springframework.context.ApplicationContext; 
import org.springframework.context.annotation.*; 

@Configuration 
@ComponentScan 
public class Application { 

    @Bean 
    MessageService mockMessageService() { 
     return new MessageService() { 
      public String getMessage() { 
       return "Hello World!"; 
      } 
     }; 
    } 

    public static void main(String[] args) { 
     ApplicationContext context = 
      new AnnotationConfigApplicationContext(Application.class); 
     MessagePrinter printer = context.getBean(MessagePrinter.class); 
     printer.printMessage(); 
    } 
} 

mais l'importation ne peut être résolu et les annotations que j'ai utilisées ne sont known.any peut me aider ..

+0

Vos paramètres de code et dépendances semblent corrects. Comment compilez-vous votre code source? (en utilisant la commande mvn?) –

Répondre

0

L'annotation @Autowired réside dans le projet spring-beans, essayez d'ajouter la dépendance à la suite votre pom:

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-beans</artifactId> 
    <version>3.2.9.RELEASE</version> 
</dependency> 
Questions connexes