这是跟进我的问题:困惑编译一个基本的Java测试程序和包
error in java basic test program
这仍是困惑我。 所以具体的问题是:
我已经有一个包和目录完成。 说com.learn.java.mypackage
$ pwd
.../com/learn/java/mypackage
,在这里我要创建在同一封装测试程序并执行它。
$cat TestPackage.java
package com.learn.java.mypackage;
public class TestPackage
{
public static void main(String args[])
{
System.out.println("Hello World\n");
}
}
$ javac TestPackage.java
// runs file
$ Java TestPackage
Exception in thread "main" java.lang.NoClassDefFoundError: TestPackage (wrong name: com/learn/java/TestPackage)
如果Java运行时要确保属于一个包中的文件住在同一个命名的目录,这是真的在这里。那么为什么它仍然是婴儿床?
你试过'java com.learn.java.mypackage.TestPackage'吗? –
我对这个问题感到困惑,特别是它与以前的不一样。 –
这里我在那个目录里面,以防它有什么区别.. – xyz