我想使用 shell 脚本运行 java 程序。 java程序在p2目录下,名字是maxconnect4,我已经编译好了,类名是maxconnect4。我这样编写 shell 命令:
java p2/maxconnect4 arg1 arg2 arg3
此 shell 命令不起作用。 它给出一个错误:线程“main”java.lang.NoClassDefFoundError中的异常:p2/maxconnect
但是,我是这样编译java程序的:
javac p2/*.java,它可以工作。
最佳答案
假设该类声明了package p2;
,这应该可以工作 - 尽管更标准的方法是在完全限定的类名中使用点而不是斜杠 - java p2 .maxconnect
.
如果类没有包声明,请尝试java -cp p2 maxconnect
。您需要指定一个类路径,以便在顶层找到类文件。
如果该类有其他包声明,则需要将其放入与其包匹配的文件夹中。
关于java - 运行一个java程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3799172/