Java-程序不报错,不往下执行问题

在日常搬砖过程中遇到了一个比较诡异的问题,现象为“某段程序”执行到特定一段就不往下走了,不报出异常,日志也不继续打,反正就是不往后面走了。问了各路神仙,都表示没见过,后仔细排查,发现终是个极其简单而容易被忽视的问题。以下不贴代码,仅做简单解释。

解决问题过程:

1、日志问题

          此段程序引自第三方,也就是说不是我写的,基本上是贴过来的。带了一些第三方日志,删除后换成自己系统的日志包,未解决此问题。

2、程序假死

          检查后发现Tomcat一切正常,没有出现线程问题,假死也没发生。

3、jar包依赖问题

         此代码段应用了一些第三方包,逐个查找后发现来自几个不同的jar包,在maven工程中来自不同的模块,逐个删除包引用,改为引用当前模块并自己实现了一部分后,问题解决了。

        

 

 

转载于:https://my.oschina.net/percylee/blog/1590065

### Java -jar 启动报错解决方案 当使用 `java -jar` 命令启动应用程序时,可能会遇到各种类型的错误。以下是针对同环境下的常见问题及其对应的解决方案。 #### 1. Linux环境下 `Failed to start bean 'webServerStartStop'` 如果在Linux环境中执行 `java -jar xxx.jar` 出现 `Failed to start bean 'webServerStartStop'` 的错误提示,则可能是由于Spring Boot项目的Web服务器配置存在问题[^1]。 - **可能原因**: Spring Boot应用中的某些Bean初始化失败或者依赖注入异常。 - **解决办法**: - 检查日志文件是否有更详细的堆栈信息。 - 验证是否存在未定义的数据库连接池或其他外部资源。 - 如果涉及JDBC操作,请确认数据源URL、用户名和密码是否正确[^3]。 #### 2. Windows环境下 `MalformedInputException` 对于Windows平台上的Jar包启动过程中抛出 `java.nio.charset.MalformedInputException` 错误的情况,通常是因为字符集匹配引起的[^2]。 - **处理方式**: 使用如下命令指定默认编码为UTF-8来规避该类问题: ```bash java -Dfile.encoding=UTF-8 -jar xxx.jar ``` #### 3. 数据库相关问题 (适用于所有操作系统) 部分情况下,即使程序能够在IDE内部正常运行,但在独立部署到生产环境后却无法成功加载所需的驱动程序或建立有效的数据库链接。 - **建议措施**: - 确认classpath路径下包含了必要的第三方库(如MySQL Connector/J)。 - 修改application.properties(application.yml)内的参数设置, 如增加timeout选项等。 ```properties spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&connectTimeout=5000&socketTimeout=10000 ``` 以上调整有助于提高网络稳定条件下的鲁棒性。 --- ### 总结 上述分析涵盖了几个典型的关于`java -jar`启动过程中的故障排查方向以及具体实施策略。实际开发工作中还需要依据具体情况灵活应对并断积累经验教训。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值