gpt4 book ai didi

java - 使用外部 jar 时出现 ClassNotFoundException

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:24:53 26 4
gpt4 key购买 nike

我正在使用 IntelliJ Idea。我构建了我的应用程序并将其创建为 .jar 文件。该程序为其数据库驱动程序使用外部 .jar 文件。

当我从 IDE 运行程序时,它工作正常。当我尝试在 IDE 之外运行我的 .jar 文件时,它报告以下异常:

Exception in thread "main" java.lang.NoClassDefFoundError: com/microsoft/sqlserver/jdbc/SQLServerException
at ca.vdts.dbupdate.Main.main(Main.java:10)
Caused by: java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)

sqljdbc42.jar 文件的目录在 list 中。我在 Windows 上,我想通过单击“.jar”文件来运行它。应用程序 .jar 文件和 sqljdbc42.jar 文件都在同一目录中。在命令行上,执行...

C:\Users\admin\IdeaProjects\DBUpdate\out\artifacts\DBUpdate>java -classpath .\sqljdbc42.jar;DBUpdate.jar -jar DBUpdate.jar

...导致相同的错误:

Exception in thread "main" java.lang.NoClassDefFoundError: com/microsoft/sqlserver/jdbc/SQLServerException
at ca.vdts.dbupdate.Main.main(Main.java:10)
Caused by: java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 1 more

最佳答案

尝试运行您的应用程序:

java -classpath sqljdbc42.jar:Application.jar -jar Application.jar

在 Windows 下将 : 替换为 ;

关于java - 使用外部 jar 时出现 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32912597/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com