运行一个java程序

我想使用shell脚本运行java程序。 java程序在p2目录下,其名称为maxconnect4,我已编译它,类名为maxconnect4。 我写这样的shell命令:

java p2 / maxconnect4 arg1 arg2 arg3

此shell命令不起作用。 它给出了一个错误:线程“main”中的exceptionjava.lang.NoClassDefFoundError:p2 / maxconnect

但是,我用这种方式编译java程序:

javac p2 / * .java,它的工作原理。

只需使用java -cp p2 maxconnect4 arg1 arg2 arg3 。 -cp设置JVM的类路径。 编辑:我假设您没有使用maxconnect4的包。

假设该类具有package p2; 声明,这应该工作 – 虽然更标准的方法是在完全限定的类名中使用点而不是斜杠 – java p2.maxconnect

如果类没有包声明,请尝试java -cp p2 maxconnect 。 您需要指定一个类路径,以便在顶层找到类文件。

如果类具有其他包声明,则需要将其放入与其包匹配的文件夹中。

试试吧

 java p2.maxconnect4 arg1 arg2 arg3 

此外,您可以尝试检查类名,并validation文件p2 / maxconnect4.class是否存在。