java addservlet_java-Maven安装错误找不到符号addServlet

我正在使用Spring,Hibernate和Maven配置工具编写MVC应用程序.但是一旦我尝试通过Eclipse中的Maven安装来构建代码,我就会不断收到错误消息

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project SampleMVCApp: Compilation failure

[ERROR] /C:/newworkspace/SampleMVCApp/src/com/javacodegeeks/configuration/AppInitializer.java:[19,56] cannot find symbol

[ERROR] symbol: method addServlet(java.lang.String,org.springframework.web.servlet.DispatcherServlet)

这是我的AppInitializer.java

package com.sampleapp.configuration;

import javax.servlet.ServletContext;

import javax.servlet.ServletException;

import javax.servlet.ServletRegistration;

import org.springframework.web.WebApplicationInitializer;

import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;

import org.springframework.web.servlet.DispatcherServlet;

public class AppInitializer implements WebApplicationInitializer {

@Override

public void onStartup(ServletContext container) throws ServletException {

AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();

ctx.register(AppConfig.class);

ctx.setServletContext(container);

ServletRegistration.Dynamic servlet = container.addServlet("dispatcher", new DispatcherServlet(ctx));

servlet.setLoadOnStartup(1);

servlet.addMapping("/");

}

}

这是我的pom.xml文件

4.0.0

SampleMVCApp

SampleMVCApp

0.0.1-SNAPSHOT

war

src

src

**/*.java

maven-compiler-plugin

3.1

1.7

1.7

maven-war-plugin

2.3

WebContent

false

4.1.9.RELEASE

4.3.6.Final

5.0.4

2.3

6.9.4

1.10.19

1.4.187

2.2

org.springframework

spring-core

${springframework.version}

org.springframework

spring-web

${springframework.version}

org.springframework

spring-webmvc

${springframework.version}

org.springframework

spring-tx

${springframework.version}

org.springframework

spring-orm

${springframework.version}

org.hibernate

hibernate-core

${hibernate.version}

javax.validation

validation-api

1.1.0.Final

org.hibernate

hibernate-validator

5.1.3.Final

mysql

mysql-connector-java

${mysql.connector.version}

joda-time

joda-time

${joda-time.version}

org.jadira.usertype

usertype.core

3.0.0.CR1

javax.servlet

javax.servlet-api

3.1.0

javax.servlet.jsp

javax.servlet.jsp-api

2.3.1

javax.servlet

jstl

1.2

org.springframework

spring-test

${springframework.version}

test

org.testng

testng

${testng.version}

test

org.mockito

mockito-all

${mockito.version}

test

com.h2database

h2

${h2.version}

test

dbunit

dbunit

${dbunit.version}

test

不知道我将javax.servlet-api多次带到哪里.

解决方法:

我猜这是servlet-api被多次包含在依赖关系层次结构中的原因,请尝试mvndependency:tree并找到servlet-api的去向并排除它们,例如,

org.springframework

spring-web

${springframework.version}

javax.servlet

servlet-api

标签:maven,servlets,java

来源: https://codeday.me/bug/20191118/2027574.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值