在ECLIPSE中运行正常,但是dos下运行不可以
clapsspath在环境变量中已经这定了
set CLASSPATH==.;.\lib;E:\Java\jdk141_03
\lib\tools.jar;E:\Java\jdk141_03\lib\dt.jar;E:\Java\jdk141_03\bin;E:\Java\jdk141_03\lib\jdom.jar;E:\Java\jdk141_03\lib\msutil.jar;E:\Java\jdk141_03\lib\mssqlserver.jar;
E:\Java\jdk141_03\lib\msbase.jar;
java -jar TEST.jar
报错
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:198)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:140)
at MmsDb.CMyJdbc.<init>(CMyJdbc.java:42)
at Gateway.MtScanner.<init>(MtScanner.java:89)
at Gateway.Main.main(Main.java:52)
java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getConnection(DriverManager.java:532)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at MmsDb.CMyJdbc.Connect(CMyJdbc.java:65)
------解决方法--------------------------------------------------------
这种类载入异常很麻烦。试试:
1、把sqlserver的驱动装入工程lib下,再打包试试。
2、把classpath中的三个sqlserver项都提前。
------解决方法--------------------------------------------------------
你应打上sql补丁,我也出现过这种问题,打上补丁后就好了。最好也关掉防火墙。
------解决方法--------------------------------------------------------
原因很简单,你在Eclipse的工程中,引用的类库包括了驱动程序的JAR包,但是,你在布暑时,没把这些JAR包放在工程的lib目录下。