开发错误手册

来源:互联网 发布:哥伦比亚冲锋衣 知乎 编辑:程序博客网 时间:2024/06/05 17:15

错误手册


个人主页:http://www.itit123.cn/ 更多干货等你来拿


在开发中难免会遇到形形色色的错误,犯错并不可怕,可怕的是一错再错。习惯把自己的错误记录下来,时刻提醒告诫自己。即使是再小的错误也不能改变你错过的事实。


1.
java.sql.SQLException: Unknown system variable 'tx_read_only'
mysql版本和驱动版本不匹配,更换一个就ok了

2.
java.lang.Exception: Socket bind failed: [730048] ?????????×???(Э?é/???????/???)????í??  
端口占用问题
Step 1:运行 -> CMD -> netstat -ano -> 找到tomcat端口号对应的PID。
Step 2:打开任务管理器 -> 查看 -> 选择列 -> 勾选PID -> 将对应的PID的进程KILL掉。
Step 3:删除TOMCAT_HOME/work/目录文件。
Step 4:重启eclipse & tomcat。

3.
java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config
如果用的是myeclipse,可以在tomcat先remove项目,然后再add,最后启动service,或者是在Build path -- java build path -- add library -- server runtime-- 添加tomcat

4.
maven项目导入jar,在项目启动还出现

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

解决方法:
需要设置eclipse,项目 -- 属性 -- Deployment Assembly -- Add -- Java Build Path Entries -- 选择 Maven Dependencies -- Finish -- OK
如果你发现没有 Maven Dependencies 可以按照下面的方法添加
解决方法:
项目 -- Build Path -- Java Build Path -- Libearies -- Add Library -- Maven Managed Dependencies -- Next -- Maven Project settings 在Active Maven Profiles (comma separated) 中添加 Maven Dependencies 确定即可
参考网站:http://tianya23.blog.51cto.com/1081650/295940

5.
tomcat显示端口被占用,如果刚开始能用,突然就不能用的情况下,可以考虑打开任务管理器 -- 进程 -- 关闭 javawx(好像是这个名字,当时忘记做笔记了,后续补上)

6.
80端口被占用:
情况一:如果开了迅雷之类的软件,可以选择关闭他们
情况二:在dom下输入netstat -ano找到占用80端口的进程,然后杀死该进程
如果pid = 4
情况三打开RegEdit: 找到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/HTTP  找到一个DWORD值Start,将其改为0,重启电脑,System进程将不会占用80端口
情况四:关闭SQL Server ReportingServices 服务

7.
解决 js文件不能用el表达式:
jsp是由服务端执行,el表达式自然由服务端解析,如果el所在的js脚本在jsp文件中是可以获取到值的,如果js脚本在单独的文件中的话,是无法获取的,因为js是客户端执行,不在同一频道上,解决方法如下:
一:添加一个隐藏域
jsp文件:
<input id="ctx" type="hidden" value="${pageContext.request.contextPath}"/>
单独js文件:
var ctx = "";
$(function(){
    ctx = $("#ctx").val();
});
二:简单粗暴,将js文件改名为jsp文件
当然要在js文件中添加需要的jsp头内容,实验证明可以
<script type="text/javascript" src="${pageContext.request.contextPath}/js/register.jsp"> 

8.
eclipse git冲突解决:
查考网站:http://blog.csdn.net/rosten/article/details/17068285

9.
页面上出现:[object HTMLInputElement]:
一般是js中出现了未定义的变量导致的

10.
出现Null value was assigned to a property of primitive type setter of 
报错的原因可能是对应字段为null;比如某字段类型为float 建议默认值设置为0,不然会报此错误

11.
更换maven版本控制台打印 :-Dmaven.multiModuleProjectDirectory system propery is not set.
解决方法:

第一步:设置环境变量M2_HOME指向你的maven安装目录

M2_HOME=D:\Apps\apache-maven-3.3.1(maven安装路径)

第二步:在Window->Preference->Java->Installed JREs->Edit

在Default VM arguments中设置

-Dmaven.multiModuleProjectDirectory=$M2_HOME


12.

maven项目不能下载jar包

原因一:

新建的maven项目不能直接开始maven test,这样是不能从maven中央仓库中下载jar包的,先要:右击项目=== properties === maven === project facets === java 选好后apply

=== dynamic web module 选好后 apply 


13.

项目使用了fis后问题

安装fis:

下载node.js

在dom窗口下输入node -v 和 npm -v;查看版本,

若有版本就输入npm install fis -g开始全局安装fis;若被墙,可以考虑翻墙或者找到国内镜像下载,下载完成输入fis -v查看


则说明安装成功



14.

el表达式在js中问题:

一般通过

<c:set var="ctx" value="${pageContext.request.contextPath}"/> 

获取项目路径,而js中却不能读取${ctx},所以可以通过传值或者是把js文件命名为jsp文件都可以解决,或者认为的添加项目名,但需要注意的是项目名前面要加斜杠(因为没加斜杠,我纠结了一下午) 


15.

发送邮件换行:


email换行.png


后续继续更新,有什么问题或者更好的解决方法欢迎指出



1 0
原创粉丝点击