eclipse导出的jar包在命令行运行,连接不上数据库

2023-12-04 12:18

本文主要是介绍eclipse导出的jar包在命令行运行,连接不上数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题描述:这里声明一下,下面所表示的问题是,eclipse导出的jar包在命令行运行时只是连接不上数据库,代码在eclipse中运行是完全可以的,而且在命令行中运行jar包也是可以显示视图界面,但需要调用数据库的时候就会报错。

运行jar包时
这里写图片描述
登录连接数据库的时
这里写图片描述

分析:命令行可以运行并且显示视图界面,就说明我们导出jar包的时候填写的清单文件MANIFEST.MF中的Manifesh-Version和Main-Class没有出现错误,自然就是连接数据库所需要的jar包在清单文件中的Class-Pash填写有错,没办法正确调用导致的。

解决办法:将原本连接数据库所需要的jar文件解压,根据java代码中连接数据库时填写的驱动driver找到解压后jar文件的相应文件夹,并把这个文件夹放到与lib的同等目录下,然后在删除lib文件夹,最后将清单文件MANIFEST.MF中的Class-Pash的值改成driver的值即可。比如下面的driver,我们就需要将数据库jar文件解压后的com文件夹复制一份放到与lib的同等目录下。

driver="com.mysql.jdbc.Driver";
url="jdbc:mysql://localhost:3306/mysqldvd";
user="root";

操作之前的jar包里面的目录
这里写图片描述
操作之后的jar包里面的目录
这里写图片描述
操作之前清单文件MANIFEST.MF内容

Manifesh-Version: 1.0
Class-Pash: lib.mysql.jar
Main-Class: fei.test.test

操作之后清单文件MANIFEST.MF内容

Manifesh-Version: 1.0
Class-Pash: com.mysql.jdbc.Driver
Main-Class: fei.test.test

可以发现里面已经没有了lib目录,而且清单文件中Class-Pash的值也改为了driver的值


最后重新在命令行运行一下jar包
这里写图片描述
发现已经可以连接到数据库,登录成功了


以上内容全部是自己亲身经历的,并且经过自己努力探索才找到上面的方案,亲试有效,谢谢~~如果还有其他问题可以评论或者私聊

这篇关于eclipse导出的jar包在命令行运行,连接不上数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/453432

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

W外链微信推广短连接怎么做?

制作微信推广链接的难点分析 一、内容创作难度 制作微信推广链接时,首先需要创作有吸引力的内容。这不仅要求内容本身有趣、有价值,还要能够激起人们的分享欲望。对于许多企业和个人来说,尤其是那些缺乏创意和写作能力的人来说,这是制作微信推广链接的一大难点。 二、精准定位难度 微信用户群体庞大,不同用户的需求和兴趣各异。因此,制作推广链接时需要精准定位目标受众,以便更有效地吸引他们点击并分享链接

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

用命令行的方式启动.netcore webapi

用命令行的方式启动.netcore web项目 进入指定的项目文件夹,比如我发布后的代码放在下面文件夹中 在此地址栏中输入“cmd”,打开命令提示符,进入到发布代码目录 命令行启动.netcore项目的命令为:  dotnet 项目启动文件.dll --urls="http://*:对外端口" --ip="本机ip" --port=项目内部端口 例: dotnet Imagine.M

maven 编译构建可以执行的jar包

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」👈,「stormsha的知识库」👈持续学习,不断总结,共同进步,为了踏实,做好当下事儿~ 专栏导航 Python系列: Python面试题合集,剑指大厂Git系列: Git操作技巧GO

Java 连接Sql sever 2008

Java 连接Sql sever 2008 /Sql sever 2008 R2 import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class TestJDBC

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下,使LabVIEW开发的程序保持稳定运行的有效策略。 LabVIEW版本兼容性 LabVIEW各版本对不同操作系统的支持存在差异。因此,在开发程序时,尽量使用

实例:如何统计当前主机的连接状态和连接数

统计当前主机的连接状态和连接数 在 Linux 中,可使用 ss 命令来查看主机的网络连接状态。以下是统计当前主机连接状态和连接主机数量的具体操作。 1. 统计当前主机的连接状态 使用 ss 命令结合 grep、cut、sort 和 uniq 命令来统计当前主机的 TCP 连接状态。 ss -nta | grep -v '^State' | cut -d " " -f 1 | sort |

深入理解数据库的 4NF:多值依赖与消除数据异常

在数据库设计中, "范式" 是一个常常被提到的重要概念。许多初学者在学习数据库设计时,经常听到第一范式(1NF)、第二范式(2NF)、第三范式(3NF)以及 BCNF(Boyce-Codd范式)。这些范式都旨在通过消除数据冗余和异常来优化数据库结构。然而,当我们谈到 4NF(第四范式)时,事情变得更加复杂。本文将带你深入了解 多值依赖 和 4NF,帮助你在数据库设计中消除更高级别的异常。 什么是