Eclipse中遗漏jar包引起的Tomcat启动错误

ltolll 2018-01-29 07:31:18
Eclipse的gradle | javaweb工程
build.gradle
//--------------
apply plugin: 'war'
apply plugin: 'eclipse-wtp'
sourceCompatibility = 1.8
repositories {
jcenter()
}
dependencies {
compile group: 'org.springframework', name: 'spring-web', version: '4.3.13.RELEASE'
//...
}
//----------------

Refresh gradle project后"Liberarys | Project and External Dependencies"下面出现了相应的jar包


做好了"Deployment Assembly"工作.
tomcat 启动服务器时出现如下错误框:

查看console第一条错误:
严重: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component
[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/xxx]]
直觉上是第三方jar包的问题
在console中用"deploy"查找, 得到:
deploy=E:\Program\JavaSpace\sts_space\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps
按路径找过去, 查看 "WEB-INF/lib" 文件夹下第三方jar包, 对比 "Project and External Dependencies"中的jar包, 发现 "spring-web-4.3.13.RELEASE.jar" 这个包在"Project and External Dependencies"中存在, 而在 "WEB-INF/lib" 文件夹下不存在.

"Project and External Dependencies"中右键"spring-web-4.3.13.RELEASE.jar"---Properties---复制路径(Java Source Attachment),
C:/Users/user/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/4.3.13.RELEASE/d225d6480b69dc70a04e332a348b448bf276f7f3/
到硬盘上查看 "C:/Users/user/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/4.3.13.RELEASE/" 这个文件夹, 发现其下包含3个文件夹:

其中 "d225d6480b69dc70a04e332a348b448bf276f7f3" 下保存的是 "spring-web-4.3.13.RELEASE-sources.jar" 这个文件.
而 "7cd084992d546165ede3e99bc31ee49c937f0ce7" 下保存的是 "spring-web-4.3.13.RELEASE.jar" 这个文件.
不知为什么Eclipse复制的是源码包, 没有复制 "spring-web-4.3.13.RELEASE.jar" 这个包, 而其它二十几个包都正常.
没找到原因的情况下只能手工复制.
...全文
633 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧