springWeb项目启动错误——java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContext

20 篇文章 0 订阅
12 篇文章 0 订阅
博主在搭建Spring项目时遇到启动问题,错误信息指向缺少spring-context包,但检查后发现所有依赖均在。通过Spring Test进行配置验证,确认配置无误。最终发现是项目发布设置导致jar包未部署到WEB-INF/lib目录,修正发布设置后,问题得到解决。提醒开发者注意检查项目构建与部署配置。
摘要由CSDN通过智能技术生成

最近在搭spring项目框架的时候,遇到一个很伤的问题,翻了很多帖,都报告说什么少spring-context包啊之类的,但实际上spring的那些依赖我根本没漏,下面是我的pom:

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>${servlet.version}</version>
        <scope>provided</scope>
    </dependency>
    
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>${gson.version}</version>
    </dependency>
    
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${spring.version}</version>
    </dependency>
     <dependency>
         <groupId>org.springframework</groupId>
         <artifactId>spring-web</artifactId>
         <version>${spring.version}</version>
     </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>
</dependencies>

先试了用srping-test组件去测试spring-mybatis是否有配置上的问题:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:spring-mybatis.xml")
public class MyBatisTest {

    @Autowired
    private MarketReportServiceI marketReportService;
    
    @Test
    public void test() {
        //从Spring容器中根据bean的id取出我们要使用的userService对象
        MarketActivityReportWeek report = marketReportService.getReportById("88f8589b-d6fd-11e6-8da9-005056af50a8");
        System.out.println(report.getMarketActivityName() + " : " + report.getDealerName());
    }
    
}

这样跑下来确实能在控制台打印出数据库中的结果,证明spring配置应该是没有问题的,但项目在tomcat死活启动不了,搞了老半天,一直在web.xml和jar包上纠结,后来直接到发布路径下面去直接找到它,发现jar包没有部署上去(WEB-INF/lib不存在),然后重新修改了一下项目的发布设置:

 

 这时候发现jar包上去了,项目也启动起来了,总算把这茬给搞定了,伤脑筋啊,一开始找的方向不对,始终查不出问题的根源所在,整个项目都差点被推翻重搭了,记下来希望对朋友们有帮助!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值