1、源文件带包名,需要在包外执行
D:\workspace\Idea\aes-encryption-javascript-java\src\test\java\com\example\demo\commontest>tree /f
卷 DATA 的文件夹 PATH 列表
卷序列号为 862C-965A
D:.
ErrorTest.class
ErrorTest.java
没有子文件夹
D:\workspace\Idea\aes-encryption-javascript-java\src\test\java\com\example\demo\commontest>java ErrorTest
错误: 找不到或无法加载主类 ErrorTest
D:\workspace\Idea\aes-encryption-javascript-java\src\test\java>java ErrorTest
执行成功
2、执行时带了class后缀
D:\workspace\Idea\aes-encryption-javascript-java\src\test\java>java ErrorTest.class
错误: 找不到或无法加载主类 ErrorTest.class
3、-cp
添加jar包,要保证报名、路径正确
- 使用
-cp
添加 jar 包的方式,java 不会检查指定路径的jar 是否存在,只会检查 要运行的类是否存在; - linux 使用
:
分隔;Windows 使用;
分隔; -cp
会使得 CLASSPATH 变量失效,可以使用 -Xbootclasspath/a:
替代
D:\workspace\run_dir>dir
驱动器 D 中的卷是 DATA
卷的序列号是 862C-965A
D:\workspace\run_dir 的目录
2021/12/19 12:29 <DIR> .
2021/12/19 12:29 <DIR> ..
2021/12/16 16:10 43,488,265 marshalsec-0.0.3-SNAPSHOT-all.jar
1 个文件 43,488,265 字节
2 个目录 558,255,435,776 可用字节
D:\workspace\run_dir>java -cp 123xxx.jar marshalsec.jndi.LDAPRefServer
错误: 找不到或无法加载主类 marshalsec.jndi.LDAPRefServer
D:\workspace\run_dir>java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://127.0.0.1:8080/#Exploit" 9999
Listening on 0.0.0.0:9999