欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Tomcat服務器啟動失敗的一些原因及解決辦法總結(jié)

 更新時間:2023年12月06日 09:22:05   作者:醉夢依依惜(互粉互贊)  
Tomcat是常用的應用服務器之一,主要用于開發(fā)和測試,也有少量用戶用在生產(chǎn)系統(tǒng)中,這篇文章主要給大家介紹了關于Tomcat服務器啟動失敗的一些原因及解決辦法的相關資料,需要的朋友可以參考下

一、Tomcat服務器啟動失敗。

...................省略大量上面的內(nèi)容
    Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 子容器啟動失敗
        at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:926)
        ... 13 more
    Caused by: org.apache.catalina.LifecycleException: 子容器啟動失敗
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:938)
        at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:886)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
        at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
        ... 13 more
    Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 無法啟動組件[org.apache.catalina.webresources.StandardRoot@12a94400]
        at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:926)
        ... 21 more
    Caused by: org.apache.catalina.LifecycleException: 無法啟動組件[org.apache.catalina.webresources.StandardRoot@12a94400]
        at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
        at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4834)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4972)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
        at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
        ... 21 more
    Caused by: java.lang.IllegalArgumentException: 指定的主資源集 [G:\apache-tomcat-10.0.21-windows-x64\apache-tomcat-10.0.21\webapps\java.html] 無效
        at org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:762)
        at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:719)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        ... 30 more
06-Apr-2023 22:27:27.968 信息 [main] org.apache.coyote.AbstractProtocol.pause 暫停ProtocolHandler["http-nio-8080"]
06-Apr-2023 22:27:27.968 信息 [main] org.apache.catalina.core.StandardService.stopInternal 正在停止服務[Catalina]
06-Apr-2023 22:27:27.968 信息 [main] org.apache.coyote.AbstractProtocol.destroy 正在摧毀協(xié)議處理器 ["http-nio-8080"]
已與服務器斷開連接

(1)找原因:看最后一個Caused by:后面的內(nèi)容。

Caused by: java.lang.IllegalArgumentException: 指定的主資源集 [G:\apache-tomcat-10.0.21-windows-x64\apache-tomcat-10.0.21\webapps\java.html] 無效

 這是最后一個Caused by的內(nèi)容:java.html無效。

去tomcat下的conf目錄下的server.xml文件:直接翻到最下面-看到 "/java.xml".

(2)解決:我是直接刪除"java.html",然后可運行。 

二、Tomcat工件部署出錯。

(1)錯誤原因1:javax.servlet.ServletContextListener。

Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletContextListener。

1、jar文件沒有同步發(fā)布到自己項目的lib目錄中,也即是你編譯之后生成的文件內(nèi),沒有l(wèi)ib目錄(沒有jar包)

(1)解決方法一:換一個版本的Tomcat。

本來是10.0.21版本的tomcat服務器,但是一直工件錯誤,然后找了很久都沒找到解決方法,但是 javax.servlet.ServletContextListener類是可以找到的。然后我換了個版本的服務器,出奇的竟然可以正常部署了。

(2) 解決方法二:在pom.xml文件中添加<packaging>標簽

<packaging>war</packaging>

(3) 解決方法三:Put into Output Root

這是由于pom.xml中下載的jar包未被部署。我們先ctrl+shift+alt+s打開Project Structure窗口,選擇Artifacts,選擇要打包部署的項目,在Output Layout –> Web-INF查看是否有l(wèi)ib目錄,如果右邊Available Elements窗口還顯示有jar包,說明這些jar包未添加,則應右擊選擇Put into Output Root就可以了。

注意:這些方法,說的是我的經(jīng)驗,不一定就可以解決或正確,因為有時候做了某個操作莫名奇妙就可以運行了,然后改回來之后,還是可以運行,這個操作就存在疑問????了,因為很難驗證或者驗證不了。

(2)出錯原因2:NotWritablePropertyException: Invalid property 'jdbcTemplate' of bean class [dao.impl.UserDaoImpl]。

    Caused by: org.springframework.beans.NotWritablePropertyException: Invalid property 'jdbcTemplate' of bean class [dao.impl.UserDaoImpl]: Bean property 'jdbcTemplate' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
        at org.springframework.beans.BeanWrapperImpl.createNotWritablePropertyException(BeanWrapperImpl.java:243)
        at org.springframework.beans.AbstractNestablePropertyAccessor.processLocalProperty(AbstractNestablePropertyAccessor.java:426)
        at org.springframework.beans.AbstractNestablePropertyAccessor.setPropertyValue(AbstractNestablePropertyAccessor.java:278)
        at org.springframework.beans.AbstractNestablePropertyAccessor.setPropertyValue(AbstractNestablePropertyAccessor.java:266)
        at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:97)
        at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:77)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1638)
        ... 69 more
13-Apr-2023 12:37:32.663 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.ApplicationContext.log Closing Spring root WebApplicationContext
13-Apr-2023 12:37:37.082 信息 [Catalina-utility-1] org.apache.catalina.core.ApplicationContext.log ContextListener: contextInitialized()
13-Apr-2023 12:37:37.082 信息 [Catalina-utility-1] org.apache.catalina.core.ApplicationContext.log SessionListener: contextInitialized()
13-Apr-2023 12:37:37.085 信息 [Catalina-utility-1] org.apache.catalina.core.ApplicationContext.log ContextListener: attributeAdded('StockTicker', 'async.Stockticker@74aed74b')

(1)錯誤:類沒有設置setter方法。

Invalid property 'jdbcTemplate' of bean class [dao.impl.UserDaoImpl]: Bean property 'jdbcTemplate' is not writable or has an invalid setter method. 

(2)解決方法:在pom.xml文件中<packaging>war</packaging>。

我的問題是我在該類中已經(jīng)加了setter方法,但是它一直出現(xiàn)這個問題。

然后我就在pom.xml文件中添加了以下代碼。

<packaging>war</packaging>

三、Tomcat服務器啟動時的日志是亂碼。

(1)解決方法1-環(huán)境變量。

在系統(tǒng)的環(huán)境變量中添加一個變量,名為: JAVA_TOOL_OPTIONS, 值為:-Dfile.encoding=UTF-8\n這樣就能讓server下的中文也變成UTF-8編碼。

(2)解決方法2-tomcat配置VM-options。

在tomcat配置VM- options: 填入:-Dfile.encoding=UTF-8。(這個設置后還是亂碼的,所以可以不設置這里,直接在IDEA中設置)。

(3)解決方法3-IEDA配置VM-options。

DEA help->edit custom VM options中保留-Dfile.encoding=UTF-8。

(4)解決亂碼后的顯示。 

總結(jié)

到此這篇關于Tomcat服務器啟動失敗的一些原因及解決辦法的文章就介紹到這了,更多相關Tomcat服務器啟動失敗內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論