ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java文件编译成功后的class文件无法执行

2021-04-22 17:00:27  阅读:224  来源: 互联网

标签:Test1 文件 Java fx s1 路径 java com class


当时的具体情况是这样的:java文件所在的package为com.fx.s1,当时的命令行所在路径为 xx:\xxx\src\com\fx\s1\_ 


我就是在此路径下先执行:javac Test1.java,运行成功,成功在当前路径产生Test1.class文件,编译成功。


当我在此路径下继续执行:java Test1 ,结果就是NoClassDefFoundError。


当时百思不得其解,环境变量的CLASSPATH设置成功,没有问题。那只有可能是命令行的问题。


改变执行命令,在class文件明前加package名称,即:java com.fx.s1.Test (注意:当前执行命令的路径还是之前的路径,没有变),执行结果:错误: 找不到或无法加载主类 com.fx.s1.Test1.


郁闷,在分析:java命令执行时,按照classpath配置情况看,是从当前目录下,加载文件的。所以如果我在com/fx/s1的目录下,在执行class文件,JVM会从新在当前目录下继续找package,所以有问题。


在改变一下,命令不变,改变路径,将命令执行路径退回到之前路径的src下,即:xx:\xx\src。在此路径下继续执行:java com.fx.s1.Test1.


执行成功。

标签:Test1,文件,Java,fx,s1,路径,java,com,class
来源: https://blog.csdn.net/qq_34823218/article/details/116020628

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有