我写了一个类,想存放到一个指定的路径下,我用了package
以下是我的代码
package com.horstmann.corejava;
class wxy 
{
public wxy()   
{
System.out.println("Hello World!");
}
}
我把 wxy 存到了com.horstmann.corejava目录下
编译没有问题,就是不能运行,
我想知道怎么做才把类放指定的包下(也就是把WXY类放到com.horstmann.corejava目录下编译)

解决方案 »

  1.   

    在com上层目录执行, 包名+类名
      

  2.   

    在主目录运行
    java com.horstmann.corejava.wxy
      

  3.   

    public wxy()
       这个函数名和类名完全相同,因此它是一个构造函数,它是不能直接调用的。
       你改一下这个名吧。
      

  4.   

    设置环境变量为你的com.horstmann.corejava目录的上一层目录,
    任何目录下都可以运行java com.horstmann.corejava.wxy(类中要写好main函数,它是程序的入口)
      

  5.   

    package com.horstmann.corejava;
    class wxy 
    {
    public wxy()//构造函数   
    {
    }
             public static void main(String[] args)
            {
           System.out.println("Hello World");
             }
    }把上面的内容存到wxy.java 里
    然后把wxy.java 这个文件放到com.horstmann.corejava目录下
    运行的命令是java corejava.wxy环境变量设置为com.horstmann
    例如:classpath 
          C:\java\com\horstmann
      

  6.   

    我按照大家说的做了,我在主目录运行包名+类名没有问题。然后我在置系统变量,变量值为“c:\”是com.horstmann.corejava目录的上一层目录,我在别的目录下直接运行 java wxy 就不行了,出错误“Exception in thread "main" java.lang.NoClassDefFoundError: wxy”请问这句是什么意思,我怎么设置环境变量或系统变量,还有变量植怎么设置,我想这个类在任何目录下都能运行~~~~!!!
      

  7.   

    我按照大家说的做了,我在主目录运行包名+类名没有问题。然后我在置系统变量,变量值为“c:\”是com.horstmann.corejava目录的上一层目录,我在别的目录下直接运行 java wxy 就不行了,出错误“Exception in thread "main" java.lang.NoClassDefFoundError: wxy”请问这句是什么意思,我怎么设置环境变量或系统变量,还有变量植怎么设置,我想这个类在任何目录下都能运行~~~~!!!---------------------------------impossible,package本身就代表一个完整的路径,你非要截断它怎么行呢
      

  8.   

    类中带包,编译和执行就不一样,这是很简单的问题
    比如说,我的类放在d:\ricky下你应该执行
    javac -d d:\ricky wxy.java要运行的时候执行
    java com.horstmann.corejava.wxy