【问题标题】:can not run java program from command line which resides in package无法从位于包中的命令行运行 java 程序
【发布时间】:2012-07-02 09:04:57
【问题描述】:
查看以下代码,位于填充目录中
mypack.pack1
package mypack.pack1;
public class myclass
{
public static void main(String args[])
{
System.out.println("KKKKKKKKKKKKKKKKKKKKKKKKKKKKKK");
}
}
请参阅以下屏幕截图。那是错误的。
我不想在类路径中添加任何内容,因为我在特定目录中并且它必须工作。
为什么它不起作用.??????
【问题讨论】:
标签:
java
command-line
command-prompt
【解决方案1】:
要执行包mypack.pack1中的主类myClass,命令是
java mypack.pack1.myClass
但是包含包树根的目录(或jar)(即包含mypack的目录)必须在类路径中,以便java找到该类。所以在你的情况下完整的命令是
java -cp F:\ mypack.pack1.myClass
而且这个命令可以从你想要的任何目录运行。
旁注:按照惯例,Java 中的所有 Java 类都以大写字母开头。您的班级应命名为 MyClass 以遵守这些约定。
【解决方案2】:
它不起作用,因为您已经在该目录下 (mypack\pack1)。
从
运行它
F:\ directory
【解决方案4】:
解决方案 1:
在命令提示符下运行:
javac myclass.java
java myclass
解决方案 2:
在命令提示符下运行:
cd ..
cd..
javac mypack.pack1.myclass.java
java mypack.pack1.myclass
问题是您已经在F:\mypack\pack1 目录中。所以你不需要指定mypack.pack1.myclass。如果你想以同样的方式运行它,直接从 F: 目录运行它。我的意思是执行cd.. 2 次并运行你的命令。