鍍金池/ 問(wèn)答/Java/ IDEA無(wú)法運(yùn)行SpringMVC項(xiàng)目,提示No TLD files were

IDEA無(wú)法運(yùn)行SpringMVC項(xiàng)目,提示No TLD files were found in

2017年12月27日 01:08更新

我剛剛誤解了一個(gè)IDEA的設(shè)置項(xiàng):
圖片描述

我以為這是“瀏覽器默認(rèn)打開(kāi)這個(gè)網(wǎng)址”的意思,結(jié)果是給項(xiàng)目加前綴,導(dǎo)致一直404,但是我還是很好奇我問(wèn)的問(wèn)題的答案,希望有朋友愿意幫我解答,謝謝。


原問(wèn)題如下:

小弟剛從Eclipse轉(zhuǎn)戰(zhàn)到IDEA平臺(tái),可以說(shuō)是諸事不順。

嘗試用IDEA編寫(xiě)一個(gè)簡(jiǎn)單的SpringMVC例子,但是一直無(wú)法正常運(yùn)行,在幾經(jīng)奮戰(zhàn)之下,已經(jīng)跳過(guò)幾個(gè)坑,比如JDK版本沖突問(wèn)題,比如libraries未勾選上等問(wèn)題。

但是還是無(wú)法順利的完成,在Google與baidu的搜索之下,也沒(méi)有找到合適的資料,所以希望能夠借助各位的幫助。

說(shuō)了這么多,錯(cuò)誤信息貼出來(lái):

[2017-12-27 12:22:01,098] Artifact myProjectName:war exploded: Artifact is being deployed, please wait...
27-Dec-2017 00:22:02.541 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanResourcePaths No TLD files were found in resource path [/WEB-INF/assets/css/].
27-Dec-2017 00:22:02.541 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanResourcePaths No TLD files were found in resource path [/WEB-INF/assets/js/].
27-Dec-2017 00:22:02.542 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanResourcePaths No TLD files were found in resource path [/WEB-INF/assets/images/].
27-Dec-2017 00:22:02.543 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanResourcePaths No TLD files were found in resource path [/WEB-INF/assets/].
27-Dec-2017 00:22:02.543 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanResourcePaths No TLD files were found in resource path [/WEB-INF/views/].
27-Dec-2017 00:22:02.543 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanResourcePaths No TLD files were found in resource path [/WEB-INF/].
27-Dec-2017 00:22:02.546 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/logkit-1.0.1.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.547 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/c3p0-0.9.5.2.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.548 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-tx-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.549 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-dao-2.0.8.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.549 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/avalon-framework-4.1.3.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.550 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-beans-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.552 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-web-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.555 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/mybatis-3.4.5.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.556 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-jdbc-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.558 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-core-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.558 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-jcl-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.560 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/mchange-commons-java-0.2.11.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.561 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-expression-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.586 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan TLD files were found in JAR [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-webmvc-5.0.1.RELEASE.jar].
27-Dec-2017 00:22:02.587 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/aopalliance-1.0.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.587 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/gson-2.8.2.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.588 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/mysql-connector-java-6.0.6.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.590 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-context-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.591 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-aop-5.0.1.RELEASE.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.591 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/fastjson-1.2.43.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.592 詳細(xì) [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner$TldScannerCallback.scan No TLD files were found in [file:/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/mybatis-spring-1.3.1.jar]. Consider adding the JAR to the tomcat.util.scan.StandardJarScanFilter.jarsToSkip property in CATALINA_BASE/conf/catalina.properties file.
27-Dec-2017 00:22:02.593 信息 [RMI TCP Connection(3)-127.0.0.1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.

備注一點(diǎn):同樣的配置,在Eclipse中可以完美運(yùn)行(包含幾個(gè)主要的配置文件,以及共用的Maven,Tomcat等)

如果可以,小弟還想問(wèn)一下,如何讓IDEA像Eclipse一樣在運(yùn)行時(shí)顯示更多關(guān)于Spring容器的日志呢?比如是否加載某個(gè)配置文件,還有IDEA的運(yùn)行目錄能不能不要那么非主流?直接放在Tomcat的webapps下面呢?

感謝!

回答
編輯回答
喵小咪

首先需要明確一點(diǎn),項(xiàng)目構(gòu)建是否使用了Maven?

從項(xiàng)目使用了lib目錄感覺(jué)不是
/E:/IDEA/myProjectName/target/myProjectName/WEB-INF/lib/spring-webmvc-5.0.1.RELEASE.jar

  1. 從傳統(tǒng)的web項(xiàng)目由eclipse到idea,導(dǎo)入的時(shí)候選擇從Eclipse導(dǎo)入
    圖片描述
  2. 導(dǎo)入后手動(dòng)配置依賴,選擇項(xiàng)目依賴的jdk版本和 項(xiàng)目編譯版本
    圖片描述
    圖片描述
  3. 添加項(xiàng)目中的lib到編譯路徑,右鍵lib
    圖片描述
  4. 如果項(xiàng)目是web項(xiàng)目,如果沒(méi)有web模塊,要添加web模塊。打開(kāi)Project Structure ,選擇Modules,查看要運(yùn)行的Module是否有web模塊,沒(méi)有則添加
    圖片描述
  5. 配置web模塊
    在idea中web資源的目錄是web文件夾,如果是eclipse項(xiàng)目web資源的目錄則是WebRoot,點(diǎn)擊Module中項(xiàng)目下的web進(jìn)行更改,改為WebRoot即可。這兩個(gè)地方都需要更改。
    圖片描述
  6. 配置Artifacts
    在idea中部署的都是Artifacts。在第4步添加web模塊的時(shí)候,添加完成后,對(duì)話框右下角是有提示創(chuàng)建Artifact的,選擇創(chuàng)建即可;這里我們手動(dòng)創(chuàng)建
    圖片描述
  7. 給idea添加tomcat
    圖片描述


    如果需要熱加載需要更改On Update action On frame deactivatioinUpdate classes and resources
    Tomcat依賴的JDK版本和啟動(dòng)也有較大關(guān)系。
    圖片描述
    部署項(xiàng)目,添加后給項(xiàng)目配置Application context 路徑,只能有一個(gè)/路徑
  8. 添加tomcat依賴
    如果項(xiàng)目中使用了Servlet等 API,如果lib中沒(méi)有相關(guān)依賴,我們要添加Tomcat依賴到項(xiàng)目中
    圖片描述
    圖片描述
  9. 啟動(dòng)項(xiàng)目,即可。

關(guān)于Tomcat運(yùn)行目錄的問(wèn)題:

這里有三個(gè)目錄

  1. Project compiler output
    圖片描述
  2. Module compile out paht
    圖片描述
  3. Artifacts Out directory
    圖片描述

因?yàn)門(mén)omcat部署的都是Artifact,所以就是Artifacts Out directory這個(gè)路徑。你看一個(gè)這個(gè)路徑,就知道了。會(huì)把項(xiàng)目中編譯好的資源拷貝到這個(gè)路徑下。在第一次運(yùn)行的時(shí)候,idea也會(huì)拷貝的,至于熱加載配置,在前文也提到了。


第一次回答問(wèn)題,希望可以幫到你。

2018年5月23日 03:51
編輯回答
憶當(dāng)年

先回答你誤解的那個(gè)設(shè)置:

clipboard.png
這里其實(shí)沒(méi)有什么好解釋,字面意思就很顯然是配置上下文地址的,至于你以為的“瀏覽器默認(rèn)打開(kāi)這個(gè)網(wǎng)址”是這個(gè):

clipboard.png

關(guān)于TLD文件問(wèn)題

你可以參考這里,也許能解決你的問(wèn)題。
https://my.oschina.net/fdblog...

關(guān)于讓IDEA像Eclipse一樣在運(yùn)行時(shí)顯示更多關(guān)于Spring容器的日志

你覺(jué)得少,首先可能是你項(xiàng)目自身日志配置的問(wèn)題,詳細(xì)的日志,例如log4j、slf4j等等請(qǐng)自行網(wǎng)上了解。
這里給出spring官方文檔說(shuō)明:https://docs.spring.io/spring...

clipboard.png

還有一種可能是在這里:

clipboard.png

以前我也用eclipse,用了IDEA就再也回不去了,不是IDEA非主流,是你沒(méi)習(xí)慣。

如果坑實(shí)在太多,最簡(jiǎn)單的辦法就是你在IDEA新建一個(gè)空的maven工程,再把以前的代碼一個(gè)個(gè)copy過(guò)來(lái),這樣出問(wèn)題的可能性會(huì)小很多。

2017年4月29日 19:24