最近遇到的几个大坑

本文总结了开发过程中遇到的五个常见问题,包括JS语法错误、Java对象比较、Eclipse项目清理、Tomcat部署WAR包及版本适配问题。这些问题不仅考验开发者的基础知识,还涉及到开发工具的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一个坑:项目中某页面文件js代码一不小心写成了<a href="javasciript:void(0)" .....>,多了一个“i”,这个bug导致调试了很久,chrome浏览器在source选项卡里显示一个失败的红色的"javasciript:void(0)",当时只是觉得这个红色的错误莫名其妙,因为粗看起来是一个经典的js空函数。无奈之下,打开了火狐,火狐直接在地址栏出现了"javasciript:void(0)"的字样,并说它无法理解该地址,由于出现在空荡荡的地址栏,于是一下子就发现了拼写错误,果断改掉,世界重新回到预定轨道了,让人不禁感慨多样性的好处了。。。


第二个坑:经常在一些面试宝典里看到经典的对象相等判断问题,看的时候都能看懂,碰到题也能条件反射般答对,可是在实际应用中总是将前辈的孜孜教诲抛到九霄云外,这不又跳坑了。两个id都是Integer,值很不凑巧的是148,代码中判断相等又是习惯性的写成了==,结果就是不等了,改成equals()就好了。以后写代码,对象的比较一定要慎重。


第三个坑:一个项目从eclipse里删除了,然后又从别的地方导入进来,忘记点击project-clean了,结果启动报错了,org.apache.ibatis.type.TypeException: Could not resolve type alias 'com.XXX.pms.entity.Affix'.  Cause: java.lang.ClassNotFoundException: Cannot find class: com.XXX.pms.entity.Affix,找了好久,才发现是eclipse的缓存在作怪,导致tomcat下这些类没有编译。

第四个坑:假如tomcat下同时有xxProject.war和xxProject文件夹,并且xxProject文件夹不是xxProject.war自动unpack出来的,这时候就会导致服务出错。另外若服务器只安装了jre,但tomcat的conf.xml里设置了不能unpack,那么你发布war包上去启动tomcat,就会报错,最后只能妥协,开启了tomcat的unpack。


第五个坑:项目完成后利用eclipse打war包,这时有个为特定版本tomcat优化的选项,倘若勾选了此项,那么很大概率上其他版本tomcat在解压此war包后将很大概率上不能正常运行,因此务必在你确定服务器上tomcat版本和开发着的tomcat版本一致,不能一个是8.0,一个是8.5的。














### PyInstaller 使用中的常见问题及解决方案 #### 1. 打包后的程序无法运行 当使用 `PyInstaller` 进行打包后,如果发现生成的可执行文件无法正常动或报错,通常是因为缺少依赖库或资源文件。 对于缺失依赖的情况,可以尝试通过指定隐藏导入来解决问题。例如,在 `.spec` 文件中添加所需的模块: ```python hiddenimports=['module_name'] ``` 另外,确保所有外部资源(如配置文件、图片等)都已正确包含在打包过程中。可以通过修改 `.spec` 文件中的数据部分实现这一点[^2]。 #### 2. 更新 PyInstaller 版本 有时旧版本可能存在某些 bug 或不兼容新特性的问题。建议定期更新至最新稳定版以获得更好的支持和服务质量改进。 命令行为: ```bash pip install --upgrade pyinstaller ``` 这有助于修复潜在错误并提高工具性能表现[^3]。 #### 3. 虚拟环境中使用 PyInstaller 为了防止全局 Python 环境受到污染以及更好地管理项目所需的各种第三方库,推荐在一个独立的虚拟环境下工作。 进入特定虚拟环境后再调用 `pyinstaller` 命令完成应用构建操作是一个不错的选择。具体做法如下所示: ```bash activate myenv # Windows下激活名为myenv的Anaconda虚拟环境 source activate myenv # macOS/Linux下激活名为myenv的Anaconda虚拟环境 pyinstaller your_script.py ``` 这样能够有效隔离不同项目的开发环境之间的相互影响[^4]。 #### 4..py 文件转换为 exe 文件 针对初次接触此过程的新手开发者来说,掌握如何将纯文本形式编写的Python脚本转变为跨平台可用的独立执行档是一项重要技能。 简单起见,只需一条简单的命令即可达成目标;而对于更复杂的应用,则可能需要进一步调整参数设置或编写自定义规格说明书(.spec file)[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值