公司要升級開發環境,做爲小白鼠責無旁貸。javascript
使用MyEclipse2017 stable 1.0 做爲開發環境驗證以前的項目可否跑起來。css
過程是很順利的(怎麼破解百度吧,目前運行尚未碰到狀況)。html
導入項目,也很順利。。java
發佈到tomcat,沒有問題。。tomcat
訪問系統主頁,登錄,都沒有問題。。服務器
看看功能吧,有問題了。eclipse
前臺提示404jvm
後臺提示:freemark的異常,主要信息:Encountered "-", but was expecting:"="。jsp
好吧,百度一下。編輯器
什麼沒有任何消息
那谷歌一下吧
有一個csdn遇到相同問題的人,帖子上面沒有多少人恢復,也沒有解決方案。那哥們應該已經換系統去了,不過他的是Myeclipse6.5,應該是編碼問題:jvm上面加上 -Dfile.encoding=UTF-8 應該就能夠了。
我和同事開始了瘋狂的搜索模式,關鍵詞以下:
tomcat8.5 freemart 衝突
myeclipse2017 tomcat
freemart Encountered "-", but was expecting:"="
等等等。。。。。。。。
我已經暈乎了
答案好像只有一個jvm編碼問題。
過了一天
仍是搜索。。。依舊沒有答案
我開始想,看來沒有人踩過這個坑。
那就一步分析吧
既然提到是我html模板中的第一行有問題,那我就看看第一行有什麼
<#include "/common/global.html"/>
額,引用了一個通用頁面,裏面是一些經常使用js、css引用,應該沒有問題呀
global.html文件清空看看,依舊
期間還看過global.html的編碼問題,貌似百度有提到 UTF-8 和 UTF-8+BOM 的問題。
16進制查看global.html,沒有問題。
那我想,幹掉這一行怎麼樣
我去,竟然好了,前臺代碼有了,看來好像就是這一句話有問題了。
我開始嘗試,修改它,一概不起做用。
後來老大說了一句,把global.html裏面的內容複製到頁面html模板中看看。
看看就看看
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>${title!}</title>
<#include "/common/g.html"/>
<style type="text/css">
html,body{width:100%;height:100%;}
*{margin:0;padding:0;}
</style>
<script type="text/javascript" src="${path!}/jsp/common/util.js"></script>
<script type="text/javascript">
var path = "${path!}" ;
</script>
</head>
</html>
粘貼過去,尼瑪竟然好了,頁面正常顯示了。
但是這裏面也有個<#include "/common/g.html"/>
看來不是以前的那個問題。
到底是那個呢?
我換上 jdk7,不行
tomcat 六、七、8 通通不行
tomcat7 32位 仍是不行
我肯定了看來不是環境的問題,是myeclipse的問題。
想起了正常頁面上面有個
死馬看成活馬醫吧,這個仍是不能解決,看來升級開發環境要推遲了。
百度了一下,這個叫codeLive 在servers視圖中有按鈕開關,選擇服務器,點擊它disable codeLive
clean project
從新發布,勝敗在此一舉。
再次訪問,全部功能都正常了!!!!!!!!!!!!
原本覺得 codeLive這個小懸浮窗挺酷的,還能夠幫我調試代碼,看來不少時候我是用不上的啦。
附:能夠在第一行是<#include "/common/g.html"/>這種類型的前面在加代碼來屏蔽codeLive對功能形成影響,同時也能夠體驗codeLive 這個新功能了。
非常抓狂,特來留念,寫的很差,多多擔待。
-----開源中國這個編輯器很好用,不知道開源了沒有。