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

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

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

一、Tomcat服務(wù)器啟動(dòng)失敗。

...................省略大量上面的內(nèi)容
    Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 子容器啟動(dòng)失敗
        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: 子容器啟動(dòng)失敗
        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: 無法啟動(dòng)組件[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: 無法啟動(dòng)組件[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 正在停止服務(wù)[Catalina]
06-Apr-2023 22:27:27.968 信息 [main] org.apache.coyote.AbstractProtocol.destroy 正在摧毀協(xié)議處理器 ["http-nio-8080"]
已與服務(wù)器斷開連接

(1)找原因:看最后一個(gè)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] 無效

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

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

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

二、Tomcat工件部署出錯(cuò)。

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

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

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

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

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

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

<packaging>war</packaging>

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

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

注意:這些方法,說的是我的經(jīng)驗(yàn),不一定就可以解決或正確,因?yàn)橛袝r(shí)候做了某個(gè)操作莫名奇妙就可以運(yùn)行了,然后改回來之后,還是可以運(yùn)行,這個(gè)操作就存在疑問????了,因?yàn)楹茈y驗(yàn)證或者驗(yàn)證不了。

(2)出錯(cuò)原因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)錯(cuò)誤:類沒有設(shè)置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)這個(gè)問題。

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

<packaging>war</packaging>

三、Tomcat服務(wù)器啟動(dòng)時(shí)的日志是亂碼。

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

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

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

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

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

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

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

總結(jié)

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

相關(guān)文章

最新評(píng)論