加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 项目在IntelliJ中编译得很好,Tomcat说java.lang.NoClas

发布时间:2020-12-16 09:58:02 所属栏目:安全 来源:网络整理
导读:我的项目在IntelliJ中编译得很好,它是一个用 scala编写的简单spring-mvc. 当我使用tomcat运行它时出现此错误: java.lang.NoClassDefFoundError: org/example/houses/SomeClassNameHere 以上不是我的图书馆的确切名称. 我的控制器看起来像: package com.exa
我的项目在IntelliJ中编译得很好,它是一个用 scala编写的简单spring-mvc.

当我使用tomcat运行它时出现此错误:

java.lang.NoClassDefFoundError: org/example/houses/SomeClassNameHere

以上不是我的图书馆的确切名称.

我的控制器看起来像:

package com.example.scalacms.web.controllers

import org.springframework.stereotype.Controller
import org.springframework.web.bind.annotation.{ResponseBody,RequestMapping}
import org.example.house

@Controller
class HomeController {
  var houses: Houses = _


  @RequestMapping(Array("/"))
  @ResponseBody
  def index: String = {
    "hello,world!"
  }

}

我很困惑,因为它在IntelliJ中编译得很好,它在智能感知系统中学习了我所有的课程.

可能是tomcat在我的类路径中没有库吗?我正在使用爆炸的神器.

我无法在输出窗口的任何地方看到类路径,所以我无法确认.

更新

所以我查看了/ out / artifacts / myapp_web_war_exploded / WEB-INF / lib,我没有在那里看到jar文件.为什么jar不包含在部署中?如何将它包含在intellij中?

解决方法

如果它是maven WAR项目,请检查jar是否被标记为排除在pom中,或者在pom中提供的范围内,因为任何一个都会从WAR中移除jar.

如果不是这种情况,请转到pom WAR所在目录的命令行,并执行mvn依赖:树并确认您的jar确实在那里.

如果jar在那里,则意味着它只能是IDE相关的问题.请尝试以下步骤:

>废弃当前的服务器>从官方网站下载并解压缩干净的服务器>在IDE中配置新服务器>确保将模块导入为maven模块,以便IDEA完全基于poms构建编译和部署类路径>如果它已经是Maven项目,请单击Maven Projects(左上角的隐藏窗格),然后单击Reimport All Maven Projects>做一个构建 – >重建项目>单击F4 / Libraries并确认库在那里,然后运行服务器

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读