崔志伟博客

repository\xalan\xalan\2.7.2\xercesImpl.jar(xml-apis.jar,serializer.jar,xml-apis.jar) (系统找不到指定的文件。)

repository\xalan\xalan\2.7.2\xercesImpl.jar(xml-apis.jarserializer.jarxml-apis.jar) (系统找不到指定的文件。)

springboot内置的tomcat为8.5.23,为了解决这个问题,我们需要修改springboot的内置tomcat版本。

 

修改方法:

修改pom.xml文件,增加<tomcat.version>7.0.90</tomcat.version>

<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
		<tomcat.version>7.0.90</tomcat.version>
 </properties>
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <tomcat.version>7.0.90</tomcat.version> </properties>

指定完tomcat版本后可以查看maven 依赖树,查看内置tomcat版本是否变为指定版本,重启项目,但是有时候启动会报错:

Tomcat启动报错代码 :

Caused by: java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory 
  at org.apache.catalina.util.LifecycleBase.<clinit>(LifecycleBase.java:37) 
  at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:169) 
  at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:164) 
  at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:134) 
  ... 13 common frames omitted 
Caused by: java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory at org.apache.catalina.util.LifecycleBase.<clinit>(LifecycleBase.java:37) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:169) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:164) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:134) ... 13 common frames omitted

因为这个时候的tocmat缺少jar包,maven项目的话加上下面这个依赖就好了:

<dependency> 
   <groupId>org.apache.tomcat</groupId> 
   <artifactId>tomcat-juli</artifactId> 
   <version>${tomcat.version}</version> 
 </dependency>
<dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-juli</artifactId> <version>${tomcat.version}</version> </dependency>

修改完成后,完美启动。

来源:原创

来源:技术君

上一篇: java 处理json格式数据中的转义斜杠

下一篇: javaweb中web.xml中不同版本头信息(2.3,2.4,2.5,3.0)