最近,我在写一个java程序命令行下传参的代码时,控制台始终报给我一个错误。
代码很简单,如下:
package basics;
public class Test
{
public static void main(String args[])
{
// 判断控制台是否传入参数
if (0 != args.length)
{
for (int i = 0; i < args.length; i++)
{
System.out.println("args[" + i + "]=" + args[i]);
}
} else
{
System.out.println("Command Line is Empty!");
}
}
}
在网上查阅了一些博客后,认识到了问题的所在。
开始时,使用cd命令调到Test.java文件所在的路径后,使用javac命令可以很方便的编译Test.java文件为Test.class。
然后使用java命令来运行Test.class文件时,Test类所在的路径出错了,因为Test在basics包的下面。
解决这个问题有两个办法:
1. 去掉代码的第一行package basics;
2. 编译和运行的时候带上包名,如下图: