[英]Java - classNotFound Exception from Windows command line but not Eclipse
我的代码在Eclipse中运行良好,没有构建路径错误或其他任何问题,但是当我尝试从命令行运行Java程序时,我在一个内部类上收到classNotFound Exception
。 我不仅不知道如何获取此异常,而且甚至不确定如何调试它,因为它在IDE环境中看起来和可以正常工作。 任何帮助表示赞赏!
编辑
我正在为称为J--的Java子集编写一个编译器,所以我真的不想完全了解它的工作原理。 但是, javac HelloWorld.java
调用javac HelloWorld.java
而不是调用等效的j-- HelloWorld.java
。 javac
正常工作。 您可能会很好地认为问题出在您的代码上,但是它再次编译并在Eclipse中运行良好。 因此,某个地方似乎存在断开连接。 这是Windows bash脚本(如果有帮助的话):
set BASE_DIR=%~dp0
set j="%BASE_DIR%\..\"
set JAVA=java
set CPATH="%BASE_DIR%\..\lib\j--.jar;%BASE_DIR%\..\lib\spim.jar"
if "%CLASSPATH%" == "" goto runApp
set CPATH=%CPATH%;"%CLASSPATH%"
:runApp
%JAVA% -classpath %CPATH% jminusminus.Main "j--" %*
set JAVA=
set BASE_DIR=
set CPATH=
编辑
感谢Aubin,输出.jar
文件并将其与class not found
的class not found
进行比较是我能够解决此冲突的方法。
通常,Eclipse从src
获取源代码并将类文件生成到bin
。
尝试:
java -cp bin a.b.c.d.MyClass
要将工具称为j-- <args>
您需要编写一个嵌入命令的shell:
java -cp bin a.b.c.d.MyClass $*
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.