STS spring bean配置文件没有spring xsd命名空间

时间:2016-09-04 18:38:57

标签: java xml spring maven spring-mvc

我已经根据视频培训教程在STS中创建了一个maven项目,并且我已经完全完成了所有步骤。

根据教程,在添加spring bean configuration文件后,我希望在命名空间选项卡中能够选择一些命名空间,如mvccontext,但我不会这样做。我知道为什么没有。只需BeanCPUtil名称空间。

我做了一些谷歌搜索,其他人提到也许是因为你没有在你的项目中使用弹簧罐,但是你可以看到它是一个maven项目而且它是&#39 ; s正确下载。

enter image description here

3 个答案:

答案 0 :(得分:0)

尝试关闭项目并在STS中再次打开它。右键单击该项目并选择Maven - >更新项目。这解决了我的问题。

答案 1 :(得分:0)

您需要导入弹簧库。组成Spring的每个库都添加了一个新的xsd模式。 如果您想要所有可能的模式添加POM文件的下一个:

<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-framework-bom</artifactId>
                <version>${org.springframework-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
  </dependencyManagement>

之前的xml代码不会将所有Spring库导入到您的项目中。您需要逐个添加所需的弹簧库。之后,您将看到可以与Spring一起使用的所有模式。

这是一个POM示例:

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.webapp</groupId>
  <artifactId>SL14-04</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

        <org.springframework-version>4.3.10.RELEASE</org.springframework-version>
        <org.aspectj-version>1.8.10</org.aspectj-version>
        <org.slf4j-version>1.7.25</org.slf4j-version>
  </properties>
  <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-framework-bom</artifactId>
                <version>${org.springframework-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
  </dependencyManagement>
  <dependencies>
        <!-- Spring -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <exclusions>
                <!-- Exclude Commons Logging in favor of SLF4j -->
                <exclusion>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                 </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
        </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
        <scope>provided</scope>
    </dependency>

  </dependencies>
  <build>
    <plugins>
      <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>2.5.1</version>
              <configuration>
                  <source>${java.version}</source>
                  <target>${java.version}</target>
                  <encoding>${project.build.sourceEncoding}</encoding>
                  <compilerArgument>-Xlint:all</compilerArgument>
                  <showWarnings>true</showWarnings>
                  <showDeprecation>true</showDeprecation>
              </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>3.1.0</version>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
        </plugin>

    </plugins>
  </build>

</project>

答案 2 :(得分:0)

在 pom.xml 中,您需要添加 spring-bean、spring 上下文、spring 上下文支持依赖项,以便与您的 spring 版本兼容。