//MyClass.javapackage mypackage;public class MyClass{
MyClass(){
System.out.println("ok!wow!");}public static void main(String[] args){
MyClass mc=new MyClass();}}
运行结果:
Exception in thread "main" java.lang.NoClassDefFoundError: MyClass (wrong name:
mypackage/MyClass)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)怎么会这样,我要怎么样才能建一个包?
MyClass(){
System.out.println("ok!wow!");}public static void main(String[] args){
MyClass mc=new MyClass();}}
运行结果:
Exception in thread "main" java.lang.NoClassDefFoundError: MyClass (wrong name:
mypackage/MyClass)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)怎么会这样,我要怎么样才能建一个包?
System.out.println("ok!wow!");}public class MyClass{
public static void main(String[] args){
myClass mc=new myClass();
}}
谢谢楼上的,能不能给我讲讲-d 是干什么用的?
Specifies the root directory of the class file hierarchy. In other words, this is essentially a destination directory for your compiled classes. For example, doing:
javac -d C:\users\dac\classes MyProgram.javacauses the class files for the classes in the MyProgram.java source file to be saved in the directory C:\users\dac\classes. If your class is in the package demos\awt, the class files would be placed in directory C:\users\dac\classes\demos\awt.
============
简单地说是加上-d参数会将.class文件编译到指定的路径并按其指定的包放好(不存在会帮你创建好)
.是当前目录的意思~
javac -d . MyClass.java是编译
java mypackage.MyClass是运行