zoukankan      html  css  js  c++  java
  • 声明了包的类Java命令找不到或无法加载主类

    首先你需要配置环境变量:
     CLASSPATH=.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
    
       java 命令会在 CLASSPATH 目录下找相应的 class 文件。

     java HelloWorld
    
        如果你输入上面的命令,那么会在 CLASSPATH 下寻找 HelloWorld.class 文件。

     java tee.Test
    
        如果你输入上面的命令,那么会先在 CLASSPATH 找 tee 目录,然后在 tee 目录里找 Test.class 文件。

        所以说如果你的环境变量配置错误,例如漏了".;",那么就不会在当前目录寻找了。
       (.代表当前目录,..代表上级目录)。

     java -cp . HelloWorld
    
       如果你输入上面的命令,那么必然会在当前目录找 HelloWorld.class 文件。
     
     
    关于包的问题,我再补充以下几点(以我自己写的socket发送端的代码作为例子)
     1 package WebProgramingDemo;
     2 
     3 import java.io.IOException;
     4 import java.net.DatagramPacket;
     5 import java.net.DatagramSocket;
     6 import java.net.InetAddress;
     7 
     8 public class UDPSendDemo {
     9 
    10     /**
    11      * @param args
    12      * @throws IOException 
    13      */
    14     /*
    15      * 创建UDP传输的发送端的步骤;
    16      * 1.建立UDP的socket服务
    17      * 2.明确要发送的数据
    18      * 3.将数据封装成数据包
    19      * 4.用socket服务的send方法将数据包发送出去
    20      * 5.关闭资源
    21      */
    22     public static void main(String[] args) throws IOException {
    23 
    24         System.out.println("发送端启动。。。");
    25         /*
    26          * 创建UDP传输的发送端的步骤:
    27          */
    28         //1.建立UDP的socket服务
    29         DatagramSocket ds = new DatagramSocket(8888);
    30 
    31         // 2.明确要发送的数据
    32         String s1 = "UDP 传输显示!";
    33         // 3.将数据封装成数据包
    34         byte buf[] = s1.getBytes();
    35         DatagramPacket dp = new DatagramPacket(buf, buf.length,
    36                 InetAddress.getByName("192.168.2.103"), 10000);
    37         // 4.用socket服务的send方法将数据包发送出去
    38         ds.send(dp);
    39         // 5.关闭资源
    40         ds.close();
    41         
    42     }
    43 
    44 }

    很明显,UDPSendDemo属于WebProgramingDemo包,
    我们cmd命令行进入到包所在的目录对该java文件进行编译和运行,会出现这样的错误:

    这个类的全名应该是WebProgramingDemo.UDPSendDemo,而我们输入的是UDPSendDemo.

    接着,我们退回到上层目录,因为编译已经通过,所以我们直接运行:

  • 相关阅读:
    cf B. Number Busters
    hdu 5072 Coprime
    HDOJ迷宫城堡(判断强连通 tarjan算法)
    Entropy (huffman) 优先队列)
    Number Sequence
    Code (组合数)
    Round Numbers (排列组合)
    Naive and Silly Muggles (计算几何)
    SDUT 最短路径(二维SPFA)
    Pearls DP
  • 原文地址:https://www.cnblogs.com/ysw-go/p/5321106.html
Copyright © 2011-2022 走看看