首先你需要配置环境变量:

 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发送端的代码作为例子)
 package WebProgramingDemo;

 import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress; public class UDPSendDemo { /**
* @param args
* @throws IOException
*/
/*
* 创建UDP传输的发送端的步骤;
* 1.建立UDP的socket服务
* 2.明确要发送的数据
* 3.将数据封装成数据包
* 4.用socket服务的send方法将数据包发送出去
* 5.关闭资源
*/
public static void main(String[] args) throws IOException { System.out.println("发送端启动。。。");
/*
* 创建UDP传输的发送端的步骤:
*/
//1.建立UDP的socket服务
DatagramSocket ds = new DatagramSocket(8888); // 2.明确要发送的数据
String s1 = "UDP 传输显示!";
// 3.将数据封装成数据包
byte buf[] = s1.getBytes();
DatagramPacket dp = new DatagramPacket(buf, buf.length,
InetAddress.getByName("192.168.2.103"), 10000);
// 4.用socket服务的send方法将数据包发送出去
ds.send(dp);
// 5.关闭资源
ds.close(); } }

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

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

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

声明了包的类Java命令找不到或无法加载主类的更多相关文章

  1. Java 错误: 找不到或无法加载主类,问题集合

      正确编译命令: javac Hello.java 正确运行命令: java Hello   错误1:H:\code>java Hello.java 错误: 找不到或无法加载主类 Hello. ...

  2. 编译和运行java文件 找不到或无法加载主类

    这边提供一个关于程序中含有package关键字,使用“终端”运行程序时出现“找不到或无法加载主类”,而使用Eclipse软件可以正常运行程序的可能解决办法. 例如程序名为HelloWorldTest. ...

  3. 记一次解决cmd中执行java提示"找不到或无法加载主类"的问题

    今天遇到一个问题:在cmd命令行中,用javac编译java文件可以成功,但是用java执行却提示“找不到或无法加载主类”.现将该问题的原因以及解决办法记录一下. 先理解一下系统变量path和clas ...

  4. IDEA导出jar包后运行报错 找不到或无法加载主类

    开发工具:IDEA16 运行环境:ubuntu 问题:根据网上的Idea导出jar包的方法,将我的项目导出jar包后运行报错:找不到或无法加载主类.   为了找到这个原因,我重新搭建了一个测试例子,在 ...

  5. 关于解决cmd中执行java提示"找不到或无法加载主类"的问题

    昨天学生遇到一个问题:在cmd命令行中,用javac编译java文件可以成功,但是用java执行却提示“找不到或无法加载主类”.现将该问题的原因以及解决办法记录一下. 先理解一下系统变量path和cl ...

  6. java提示找不到或无法加载主类

    背景 默许jdk的配置大家都没有问题,执行java,javac无报错,但今天在尝试在本地起来kafka的时候,提示java 找不到或无法加载主类,然后日志中提示 Files 找不到或无法加载主类:C: ...

  7. 【spring boot】启动类启动 错误: 找不到或无法加载主类 com.codingapi.tm.TxManagerApplication 的解决方案

    导入的一个外部的spring boot项目,运行启动类,出现错误:找不到或无法加载主类 com.codingapi.tm.TxManagerApplication 解决方案: 将所有错误处理完成后,再 ...

  8. java 错误:找不到或无法加载主类的解决办法

    此类错误的常见解决办法: 1.是因为.java文件不在项目的src路径内,也就是说源代码未被eclipse编译,字节码不存在无法运行了在项目名上右键 -> Builder Path -> ...

  9. 关于Java的“找不到或无法加载主类”

    Java编程思想4th第六章的关于访问权限和包的笔记总结时遇到了一个关于package命名及导入的问题. 环境:Ubuntu 16.04.3 LTS x86_64 首先,我要安装部署Java的开发环境 ...

随机推荐

  1. android 点击重新加载界面设计

    在项目中经常会遇到这样的场合,用户点击了一个界面后要提示等待加载,最后有可能显示加载失败,点击屏幕再重试加载.下面是该实例的代码: layout: loading.xml <?xml versi ...

  2. java 布尔值一种赋值方法

    在研读jmeter的代码时发现一个很常见的布尔值赋值方式,记录下来备忘: public static void main(String[] args) { // TODO Auto-generated ...

  3. Qt之启动外部程序(调用cmd.exe ping putty winscp 管道等等,比较牛叉)

    http://blog.csdn.net/u011012932/article/details/50478833

  4. C++中的INL

    inl文件介绍 inl文件是内联函数的源文件.内联函数通常在C++头文件中实现,但是当C++头文件中内联函数过多的情况下,我们想使头文件看起来简洁点,能不能像普通函数那样将内联函数声明和函数定义放在头 ...

  5. Jdk5.0中出现的新特性

    掌握jdk5.0中出现的新特性1.泛型(Generics)2.增强的"for"循环(Enhanced For loop)3.自动装箱/自动拆箱(Autoboxing/unboxin ...

  6. Oracle学习笔记之数据类型

    1. mysql和oracle做数据同步.其中表的一个字段在mysql中设置为varchar(6),Oracle中为varchar2(6)   但mysql中能正常存放的数据同步到oracle中却抱O ...

  7. linux文件系统-基本磁盘2

    直入主题-基本磁盘 硬盘数据按照不同特点和作用大致分为5部分:MBR区.DBR区.FAT区.DIR区和DATA区 1.MBR MBR(Main Boot Record 主引导记录区)位于整个硬盘的0磁 ...

  8. CentOS7.1 安装关键步骤 记录下来

    SecureCRT下载地址 https://yunpan.cn/cS9W94kuvhXPb  访问密码 08cd[这里GNOME桌面 下的 要全选,截屏有误]

  9. CenOS7.1安装VNC——让win7远程桌面linux

    参考:http://wic.xingning.gov.cn/blog/29 https://linux.cn/article-5335-1.html 1.检查是否安装VNC, rpm -q tiger ...

  10. JavaScript DOM高级程序设计 5动态修改样式和层叠样式表1(源代码)--我要坚持到底!

    W3C DOM2样式规范 现在这边贴出本章要的源代码,注意要结合前面用到的ADS库http://vdisk.weibo.com/s/Dq8NU CSSStyleSheet对象属性: type :始终是 ...