我用一些数据库连接创建了一个简单的Swing应用程序,使用Notepad ++并从命令提示符执行它。它执行得很完美。
然后我将所有代码复制到Netbeans并尝试构建到主项目,以便将我的应用程序打包为.jar文件。
.jar文件已成功创建,但是当我尝试运行它时,它没有正确执行。例如,我的应用程序中有一个按钮,显示数据库中存在的所有记录。当我从命令提示符执行时它起作用,但是当执行.jar文件时,没有响应。
答案 0 :(得分:2)
很难说没有看到一些代码或错误/异常堆栈跟踪。导致此类问题的最典型原因是类路径不完整。可能在类路径中缺少数据库驱动程序类。
您可能会检查一些事项:
java -jar path/to/myjar.jar
之类的东西启动应用程序时就是这种情况 - 必须在jar文件Manifest中指定类路径 ,任何-cp
值都会被忽略。< / LI>
看看你的上一条评论,我很确定,这是一个类路径问题。数据库驱动程序通常驻留在不同的jar文件中,如果manifest.mf文件中的类路径条目为空,则无法加载驱动程序。 应该导致异常,但可能会在某个地方捕获。
解决方案#1 - 编辑manifest.mf文件并根据此tutorial添加所有必需的库:
Class-Path: jar1-name jar2-name directory-name/jar3-name
解决方案#2 - 不要使用-jar
选项启动应用程序,而是使用标准方式:
java -cp yourLib.jar;database-driver.jar your.application.Main
(所有库条目必须以正确的相对或绝对文件路径给出)
答案 1 :(得分:0)
只需将数据库驱动程序复制到C:\ Program Files \ Java \ jre7 \ lib \ ext,然后运行jar文件。