将项目中lib下jar包合并到Tomcat中lib下

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将项目中lib下jar包合并到Tomcat中lib下相关的知识,希望对你有一定的参考价值。

参考技术A 将项目打成war包然后发布,考虑到打包的速度以及发布的速度(因为可能不止一个项目同时启动,而每个项目中可能都存在相同的jar包),    将项目中的lib下的jar包合并到Tomcat中lib文件夹下,统一部署。

但是随之可能产生的问题(异常信息部分如下):

严重: A child container failed during start

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]

at java.util.concurrent.FutureTask.report(Unknown Source)

at java.util.concurrent.FutureTask.get(Unknown Source)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1119)

at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:819)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)

at java.util.concurrent.FutureTask.run(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:162)

... 6 more

Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.getClassLoader()Ljava/lang/ClassLoader;

at org.apache.catalina.startup.WebappServiceLoader.load(WebappServiceLoader.java:96)

at org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1579)

at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1280)

at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:888)

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:388)

at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5522)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)

... 6 more

三月 21, 2018 9:44:25 上午 org.apache.catalina.core.ContainerBase startInternal

解决方法: 将Tomcat下lib包中的servlet-api.jar,复制到C:\Program Files\Java\jre1.8.0_144\lib\ext 下

aide如何导入jar

Android Studio中jar包放在libs目录下,jni编译的so库存放在libs目录下的armeabi目录中。
导入步骤:
1. 右键app目录,find path,即打开app目录。
2. 在libs目录下新建文件夹,名字为 armeabi,注意名字不能改。
3. 将jar复制到libs目录下。
4.将.so库文件复制到armeabi目录下即可。
参考技术A 这个我刚刚解决,用文件管理器把jar包复制到APP下,然后创建一个与src同级的libs目录把jar包丢进去。然后用AIDE点进libs文件夹,对着xxx.jar长按,选择"添加库文件到项目"就好了。
无论AIDE中Android项目还是Java项目,都可以这么解决。
添加好之后,然后在项目里import就好了。
😂给个赞再走吧
参考技术B 先写一段代码在aide一个Java里,用MT管理器把jar放lids里复制到app项目里,然后运行,太麻烦了,直接艾特我,我给你我QQ,然后教你吧 参考技术C 把jar包放到aide的libs目录下然后刷新就可以了 参考技术D 不知道。。。

以上是关于将项目中lib下jar包合并到Tomcat中lib下的主要内容,如果未能解决你的问题,请参考以下文章

老版本tomcat下lib的jar包是不是可以用新版本的jar包覆盖替换

对Tomcat启动或运行时,项目对jar包依赖路径的一些粗浅认知

试用fresco 出现如下错误,不知怎么解决

让eclipse自动向tomcat导入lib

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

tomcat 不停止状态删除应用,lib下的jar包被占用,一直删不掉,如何处理