我正在编写一个Swing桌面应用程序.我使用以下方法编译程序:
C:\ MyJavaPrograms\src>"C:\ Program Files\Java\jdk1.7.0_04\bin\javac"SVNTool.java -cp".; C:\ parsers\commons\commons-lang-2.4.jar; C: \解析器\ svnkit-1.7.4-V1\lib中\ svnkit-CLI-1.7.4-v1.jar; C:\解析器\ svnkit-1.7.4-V1\lib中\ svnkit-1.7.4-v1.jar"
我用以下方法调用我的程序:
C:\ MyJavaPrograms\src>"C:\ Program Files\Java\jdk1.7.0_04\bin\java"SVNTool -cp".; C:\ parsers\commons\commons-lang-2.4.jar; C:\ parsers\svnkit-1.7.4-V1\lib中\ svnkit-CLI-1.7.4-v1.jar; C:\解析器\ svnkit-1.7.4-V1\lib中\ svnkit-1.7.4-v1.jar"
它汇编很好.它开始很好.但是当我点击按钮时,它会创建一个SwingWorker线程,但是这个线程失败了NoClassDefFoundError.
我搜索了网络,并通过使用以下方法将一些jar文件添加到CLASSPATH环境变量中来解决问题:
C:\ MyJavaPrograms\src> set CLASSPATH =%CLASSPATH%; C:\ parsers\svnkit-1.7.4-v1\lib\svnkit-1.7.4-v1.jar; C:\ parsers\svnkit-1.7.4- V1\lib中\ svnkit-CLI-1.7.4-v1.jar; C:\解析器\公地\公地琅2.4.jar
那么,是什么导致多线程Swing应用程序中编译时和运行时之间的类路径不匹配?有没有办法让线程可以使用所有环境变量和命令行选项?