命令行编程
Commandline programming
我正在使用 RHEL。我只是 运行 正在使用以下程序在我的控制台中打印一行,
package test;
public class test
{
public static void main(String a[])
{
System.out.println("hi");
}
}
我编译它使用,
javac test.java
我试过运行,
java test.test
它说,
could not load or find main class
我在 class 文件所在的目录中。
ls
目录上显示,
test.java test.class
可能是什么原因?
java test
说,
Exception in thread "main" java.lang.NoClassDefFoundError: test (wrong name: test/test)
java
将 class 名称(包括包)作为参数,而不是文件名。
此外,class test.test
必须存储在当前目录的 test/test.class
- 而不是 中的 test.class
中。
您应该在名为 test
的文件夹中包含 test.class
;转到 外部文件夹 (包含 test
的文件夹)和 运行:
java test.test
这是我为一个简单的 java 程序所做的:
没有package xxx;
行
确保 main class 的名称是 Test
- 首字母大写
- 您的
.java
文件应存储在 test
目录中 (test/test.java
)
- 如果您正在使用
javac test.java
,请确保在执行 java test.test
之前将目录更改为父目录 (cd ..
),因为 Java 将查找test.class
在 test
目录(或包)
仔细查看 Lesson: Packages 了解更多详情。
您可能希望通读 Code Conventions for the Java TM Programming Language,这将使人们更容易阅读您的代码,您也可以更轻松地阅读其他人
我正在使用 RHEL。我只是 运行 正在使用以下程序在我的控制台中打印一行,
package test;
public class test
{
public static void main(String a[])
{
System.out.println("hi");
}
}
我编译它使用,
javac test.java
我试过运行,
java test.test
它说,
could not load or find main class
我在 class 文件所在的目录中。
ls
目录上显示,
test.java test.class
可能是什么原因?
java test
说,
Exception in thread "main" java.lang.NoClassDefFoundError: test (wrong name: test/test)
java
将 class 名称(包括包)作为参数,而不是文件名。
此外,class test.test
必须存储在当前目录的 test/test.class
- 而不是 中的 test.class
中。
您应该在名为 test
的文件夹中包含 test.class
;转到 外部文件夹 (包含 test
的文件夹)和 运行:
java test.test
这是我为一个简单的 java 程序所做的:
没有
package xxx;
行确保 main class 的名称是
Test
- 首字母大写
- 您的
.java
文件应存储在test
目录中 (test/test.java
) - 如果您正在使用
javac test.java
,请确保在执行java test.test
之前将目录更改为父目录 (cd ..
),因为 Java 将查找test.class
在test
目录(或包)
仔细查看 Lesson: Packages 了解更多详情。
您可能希望通读 Code Conventions for the Java TM Programming Language,这将使人们更容易阅读您的代码,您也可以更轻松地阅读其他人