IDEA搭建ssm框架測試衍生出的問題The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Develop\jdk7\jdk1.7.0_79\bin;


問題描述

最近玩起IDEA這開發工具,搭建ssm框架測試時,部署項目出現如下問題:

信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Develop\jdk7\jdk1.7.0_79\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;D:\Develop\jdk8\jdk1.8.0_112\bin;D:\Develop\jdk8\jdk1.8.0_112\jre\bin;D:\Develop\apache-cxf-3.0.13\bin;D:\Develop\apache-maven-3.5.0\bin;D:\Develop\gradle-4.0\bin;D:\Develop\apache-tomcat-7.0.52\lib;C:\ProgramData\Oracle\Java\javapath;G:\oracle11g\product\11.2.0\dbhome_1\bin;C:\Program Files (x86)\Common Files\NetSarang;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;D:\Develop\svn\bin;D:\Develop\MySQL\MySQL Server 5.5\bin;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;D:\Develop\apache-tomcat-7.0.52\bin;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;D:\Develop\Bandizip\;.

解決方案

1.先搜了下解決方案,把tomcat的bin目錄加入到環境變量中,沒解決.

2.然后,有說下載.dll文件放到tomcat的bin目錄下的,如下:(沒解決)

步驟一:

http://tomcat.heanet.ie/native/1.1.10/binaries/

下載:tcnative-1.dll文件

啟動tomcat,控制台:

嚴重: An incompatible version 1.1.10 of the APR based Apache Tomcat Native library is installed, while Tomcat requires version 1.1.29

說明.dll的版本需1.1.29的,那就下載1.1.29的唄....

步驟二:

 下載1.1.29版本的.dll文件,但是通過查找發現最新的版本也不過1.1.14....

 步驟三:

降低tomcat版本?換成tomcat6....

3.繼續搜索

http://blog.csdn.net/j04110414/article/details/8864667

(1).該文中說到jdk版本問題, jdk7和8都沒影響, 依然是同樣的錯誤.調到現在已經很無奈了......(讀到這里我已經對國內的資料很反感了,大部分都是抄襲,但是直到最后問題解決發現他們抄襲的還是對我有幫助的...都是過來人啊...)

(2).jar包沒有導入...??(就是這個問題)

  開始以為pom.xml自動導入就萬事大吉了,原來IDEA創建的web項目,pom引入jar的依賴后,還需要下面的一步配置: 將jar包導入到項目中:

  File>Project Structure>Artifact

在pom.xml中依賴jar后, 此時的jar包是在上圖的綠色部分.此時jar包是沒有導入到項目中的!!!將其全選>右鍵....那啥,搞到左邊來就ok了!!!(具體可搜索"IDEA的web項目導入jar包"可參考http://blog.csdn.net/qq_26525215/article/details/53239123這篇介紹了兩種方式...)

好了, 導入jar包后重啟tomcat:

歐了.瀏覽器自動彈出index.jsp:

===============================傲嬌的分割線=================================

然后訪問我的Servlet:

地址欄輸入:http://localhost:8080/personal/user/showUser

此時,一萬個草泥馬奔騰而過....

這個問題就是和標題無關的事兒了.這是我編寫測試代碼時參考的網上的一個demo:http://blog.csdn.net/gallenzhang/article/details/51932152這篇已經介紹的非常詳細了.我這里之所以出現這個問題是因為沒連接到數據庫,也就是我的jdbc.properties配置有問題:下面這個代碼塊是他項目中的配置,我需要將數據庫名db_ssm修改為我的數據庫名pers,然而我把這個jdbcUrl后面的拼接那一串干掉了:

修改成了jdbcUrl=jdbc:mysql://localhost:3306/pers, 是不是因為這樣才報的錯呢?...fuck.還有這種操作?

driverClasss=com.mysql.jdbc.Driver jdbcUrl=jdbc:mysql://localhost:3306/db_ssm?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
username=root password=root #定義初始連接數 initialSize=0 #定義最大連接數 maxActive=20 #定義最大空閑 maxIdle=20 #定義最小空閑 minIdle=1 #定義最長等待時間 maxWait=60000

 再訪問http://localhost:8080/personal/user/showUser

很明顯了,綁定有問題,查看配置文件.原因如下:

 再訪問http://localhost:8080/personal/user/showUser 終於好了...

此時驗證jdbc.properties的jdbcUrl的拼接配置, 將拼接刪除,改為:jdbcUrl=jdbc:mysql://localhost:3306/pers

重啟tomcat,訪問http://localhost:8080/personal/user/showUser其結果和帶拼接的是一樣的...后面拼接的編碼集啥的無可厚非...

 

另:http://www.cnblogs.com/lz-wolf/archive/2011/10/29/2228923.html這篇的解決辦法,我試了,不對號.不知道其他人是不是有這文章里講的情況. 

 

總結

  1.pom.xml引入jar的依賴后需要將jar包導入到項目中;

  2.有時不得不考慮jdk和tomcat的版本問題,但基本上關系不大,通常用的無非tomcat7或8(貌似公司項目用的6), jdk7或8;

  3.查看控制台及日志文件;

  4.余下的就是基礎知識和細心了;

  5.IDEA的項目結構等,摸索IDEA的路還很長啊...;

  6.每個人遇到的問題,原因可能都不止一個...

 

感謝

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM