eclispe或者myeclispe maven jar包不能部署到tomcat下

我们在做web开发是,经常都要在eclipse或者myeclipse中搭建web服务器,并将开发中的web项目部署到web服务器进行调试,在此,我选择的是tomcat服务器。之前部署web项目到tomcat进行启动调试都很正常,今天突然出现无法启动情况,启动过程报如下错误:

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:133)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4727)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)

类找不到,该类依赖于spring-web-XXXX.jar,看了下maven依赖库,该依赖是存在的,那是怎么回事,然后再看tomcat目录下的webapps中部署的项目,项目已经部署成功,相应的class文件和静态文件都有了,但仔细一看,在WEB-INF下缺少了lib文件夹,才明白为什么找不到org.springframework.web.context.ContextLoaderListener类了。为什么在eclipse/myeclipse中启动tomcat时没有将lib拷贝过来,想想之前碰到了项目部署设置的问题。解决办法如下:

右击项目->properties->(myeclipse中点击myeclipse选项)找到Deployment Assembly,右边便是编译打包的配置,看是不是缺少了lib库的依赖,我的就是,点击Add,添加maven依赖库。最后列表如下

再重新启动tomcat,启动成功!!

转载请注明链接:http://blog.csdn.net/yiwenjun2008/article/details/18728453

时间: 2024-10-15 14:07:02

eclispe或者myeclispe maven jar包不能部署到tomcat下的相关文章

eclipse maven项目如何将所有的jar包复制到lib目录下?

1.情景展示 我们知道,maven项目的jar包并不存在与项目当中,项目所需的jar包都保存在本地仓库中,如果本地仓库没有,会从配置的中央仓库下载,如果中央仓库也没有就会报错: 如上图所示,我想将项目所依赖的所有jar包都放在src/main/webapp/WEB-INF/lib目录下, 如何实现? 这样做的目的,是为了可以热部署. 2.分析 默认情况下,要想获取项目所依赖的jar包,需要执行maven命令来实现,比如:mvn install 执行后,target目录下会出现该项目以及已经打好的

MAVEN JAR包整理

MAVEN JAR包整理 *****************************Java对象复制**************************** #####################JODD######################### <dependency> <groupId>org.jodd</groupId><artifactId>jodd-bean</artifactId><version>3.6.7&

maven jar包上传到服务器

maven jar包上传到服务器时出现pom文件没有上传上去,致使该jar包再被使用的时候没有依赖,jar包调用出错 解决办法,将pom文件一起deploy上去 mvn deploy:deploy-file -DgroupId=com.hikvision -DartifactId=WebXmlServer -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar -Dfile="E:\workfiles\WebXmlServer\target\WebXmlServer-1

windows 自动移动maven jar包到jmeter 文件夹下面

jmeter 自动移动maven jar包到jmeter 文件夹下面 bat 文件 rem 本文件放在jmeter 脚本maven项目根目录下面,和pom.xml在同一个文件夹下面 rem 预置条件,把官网下载的apache-jmeter-3.2.zip 放在如下filePath 并解压到当前文件夹 set filePath=D:\work\jmeterPerformanceTest rem rd /s /q %filePath%\apache-jmeter-3.2\ rem echo "sta

将JavaWeb项目打出war包并部署到tomcat

使用Maven的打包,在pom.xml中配置打war包还是jar包. 1)选中项目,右击选择run as→Maven install 在控制台可看到打包成功信息及war包路径. maven中有package,install,deploy三种方式,从上图可以看出,install比package多了maven-install-plugin:2.4:install (default-install),通过看控制台输出,我们可以发现以下区别: package命令完成了项目编译compile.单元测试te

Eclipse 将工程Build Path中引用的jar包自动拷贝到WEB-INF下的lib文件夹下

在用用 Eclipse进行Java Web开发时,web应用中引用的jar需要拷贝到WEB-INF下的lib文件夹下,否则经常出现ClassNotFound异常. 通过下面方法,可以不用手动拷贝jar包,Eclipse自动将工程Build Path中引用的jar包自动拷贝到WEB-INF下的lib文件夹下,过程如下: 1.右击工程,选择Properties(属性) 选择Deployment Assembly,如下图: 2.点击右侧Add按钮,如下图: 3.选择Java Building Path

Spring boot打包为可部署在tomcat下运行的war文件的方法(使用Gradle、Intellij IDEA)

使用Gradle: dependencies { compile("org.springframework.boot:spring-boot-starter-web") providedCompile("org.springframework.boot:spring-boot-starter-tomcat")//此处使用providedCompile,则生成的jar包可放入tomcat内运行// compile("org.springframework.b

springboot项目部署到tomcat下步骤

1:项目改成war包,并去除springboot默认的tomcat <!-- springBoot的启动器 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- provided 表明该包只在编译和测试的时候使用,去除默认的tomcat --> &l

eclipse中基于maven构建的web项目pom.xml中指定的jar包无法发布到tomcat中

eclipse运行maven web项目报错: 信息: Starting Servlet Engine: Apache Tomcat/7.0.57 一月 07, 2015 11:50:44 下午 org.apache.catalina.core.ContainerBase startInternal 严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catal