我正在编写一个批处理文件来编译和运行java。下面是代码。我可以编译它。问题是,它可以运行java类。它会给我错误
Exception in thread "main" java.lang.NoClassDefFoundError: com/Sender
这是代码
set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_25
set SOURCE=./src
set LIB=./lib
set BIN=./bin
set CLASSPATH=%LIB%/*
set CURRENTDIR=%CD%
echo %CURRENTDIR%
"%JAVA_HOME%"\bin\javac -d %BIN% -classpath "%CLASSPATH%" "%SOURCE%/com/Sender.java"
"%JAVA_HOME%"\bin\java -classpath "%CLASSPATH%:%BIN%" com.Sender %CURRENTDIR%
pause
答案 0 :(得分:2)
您需要在Windows上将类路径元素分隔;
(分号),而不是:
(冒号)。冒号用于* nix系统。
答案 1 :(得分:0)
您的CLASSPATH不正确。生成的类com / Sender.class不能从您提到的路径中引用。更好的方法是生成所有类文件,将它们打包到jar中并在类路径中提及它们。