繁体   English   中英

从控制台运行java.lang.ClassNotFoundException

[英]java.lang.ClassNotFoundException running from the console

我编译了Java文件:

source code
 folder1
  a.java
  b.java
 folder2
  c.java
  d.java
 Main.java

我想在此文件夹中运行它们:

bin
 folder1
  a.class
  b.class
 folder2
  c.class
  d.class
 Main.class

我尝试了java Main ,程序开始运行。 但是当我按下一个键时,它说:

java.lang.ClassNotFoundException: CFactory

其中CFactory是Main.java调用的Java文件,如下所示: (Class.forName("CFactory").newInstance())

如何解决该问题并正常运行?

run.bat
mkdir abstractfactorypattern\abstractcommandfactory
mkdir abstractfactorypattern\abstractfoodfactory
mkdir commandpattern
mkdir mementopattern
mkdir stock

cd ..\source code

javac abstractfactorypattern\abstractcommandfactory\*.java
javac abstractfactorypattern\abstractfoodfactory\*.java
javac commandpattern\*.java
javac mementopattern\*.java
javac stock\*.java

move abstractfactorypattern\abstractcommandfactory\*.class ..\bin\abstractfactorypattern\abstractcommandfactory
move abstractfactorypattern\abstractfoodfactory\*.class ..\bin\abstractfactorypattern\abstractfoodfactory
move commandpattern\*.class ..\bin\commandpattern
move mementopattern\*.class ..\bin\mementopattern
move stock\*.class ..\bin\stock`enter code here`
move *.class ..\bin

cd ..\bin
java AIMS

pause

该错误意味着Java找不到名为CFactory.class的文件。 你有地方吗?

一旦找到它所在的位置,就可以像这样执行Java程序(假设您的文件位于C:/path/CFactory.class ):

java -classpath .;C:/path/ Main

解决方案核心命令c = Class.forName(“ package1.package2。” + x).newInstance();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM