java编译时为什么总找不到文件,javac编译时找不到文件的问题和运行项目找不到指定类问题...

问题描述:

刚刚安装完JDK,打开Eclipse创建一个新项目,写了一个测试类进行输出打印语句时,报无法找到相应类。

然后,我跑到CMD中进行javac Test.java运行测试时,报找不到对应文件。到了这里,让我怀疑我的JDK安装环境变量配置有问题。然后我使用java、javac、java -version进行测试时,均有正常输出,即JDK安装环境变量没有问题。

这时,在网上查到一篇解答,说是用记事本写Java源码时,有.txt隐藏后缀。然后我一看文件格式果然还是txt文本格式,由于我之前一直用的WIN7,今天下午改用WIN10,重新配置JDK,竟然忘了这茬。

1dad0c5bd98522ca2e6d38009365ef88.png

然后,我把相应文件后缀名修改为.java后缀后,在CMD中成功运行,然而在Eclipse中再次运行测试类时,依旧报无法找到相应类。

这时,我仔细想了想,应该是项目存放路径有可能包含中文,或者包含空格(PS:此处之所以说有可能,是因为楼主自己测试在C盘默认C:\Program Files (x86)\的含有空格路径,不能找到文件,而自己单独建立路径时,有时含有空格或者中文又能够找到文件),而我的项目实际存放路径为:C:\Program Files (x86)\Java\workplace。即包含了空格,然后我跑到该目录下查看创建的类文件,然而该目录下什么文件也没有,即为空。

最后,我修改了项目存放路径为C:\work,重新创建项目,再次运行测试类时,成功输出。

综上所述:

1.用TXT文本编写测试类时,注意后缀名要修改为.java。(PS:WIN10默认隐藏了文件后缀名,打开后缀名,请参见:Win10怎样改变文件拓展名)

2.Eclipase项目存放路径尽量不要包含中文,也不要包含空格。

Gtksharp编译时提示下载gtk文件问题

Gtksharp编译时提示下载gtk文件问题 1.昨天晚上新建gtksharp项目之后,安装gtksharp之后,编译时无法成功,提示无法下载gtk-3.24.zip 2.记得前几天,另一个项目可以生 ...

代码编译时JDK版本和运行时JDK版本不一致启动项目报错

java编译: java编译就是.java文件变成.class文件的过程,这个过程一般在我们常用的编译器中进行,例如Ecliplse和IDEA等:下面以IDEA举例: 执行上述编译使用的JDK版本就是 ...

关于javac编译时出现“非法字符:\65279”的解决方法

一般用UE或记事本编辑过的UTF-8的文件头会加入BOM标识,该标识由3个char组成.在UTF-8的标准里该BOM标识是可有可无的,Sun 的javac 在编译带有BOM的UTF-8的格式的文件时会 ...

javac编译带包的java文件需要在命令处加参数

不带包:javac aaa.java 带包:javac -d . aaa.java 带包就是 java文件中含有 package com.aaa;

happynear_caffe编译时,缺少头文件caffe.pb.h的问题

由于一些问题,需要编译caffe 的windows版本,用的是happynear的caffe版本,在caffe.pb.h遇到了问题 如何生成 caffe.pb.h 将protobuf 里的 proto ...

Javac编译时出现包不存在的报错的解决方案

今天在学习包类调用时出现如下错误: packa包不存在,在C盘目录下应该有这个包啊 原因是在当前目录下没找到,因为packa存放在其它目录下 如何解决: 应该配置一个classpath,直接把包所在的 ...

javac编译后运行提示找不到或无法加载主类

第一种常见错误: package demo_01; public class hello { public static void main(String[] args) { System.out.p ...

关于JAVA编译时找不到自定义包的问题

这两天照网上的教程,学习JSP/SERVLET/JAVABEAN,写了几个JAVA文件,目录放在TOMCAT的WEBAPPS下面,通过javac编译时,老提示找不到指定的包: 下图是我的目录路径: 通 ...

随机推荐

廖雪峰js教程笔记3

JavaScript的函数在查找变量时从自身函数定义开始,从"内"向"外"查找.如果内部函数定义了与外部函数重名的变量,则内部函数的变量将"屏蔽&qu ...

iOS 清理缓存功能实现第一种方法

添加一个提示框效果导入第三方MBProgressHUD #import "MBProgressHUD+MJ.h" /** * 清理缓存第一种方法 */ -(void)clearCa ...

C# 命名参数【转】

命名参数(Named Arguments)就是说在调用函数时可以通过指定参数名称的方式来调用参数.它最大的好处就是方便调用参数时按调用者的需要来排列顺序,而不必死守函数声明时的顺序(相对于“位置参数” ...

php服务器安装memcache

https://pecl.php.net/get/memcache-3.0.8.tgz wget https://pecl.php.net/get/memcache-3.0.8.tgzgzip -d ...

[HDU POJ] 逆序数

HDU 1394 Minimum Inversion Number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/3276 ...

VS2010的openssl源码编译方法

http://download.csdn.net/download/soucula/9591308

.NET防止SQL、JS、HTML注入

/// /// 过滤标记 /// /// 包括HTML,脚本 ...

eclipse使用egit提交代码报错

在eclipse上使用插件egit同步代码时出现如下错误 解决办法: 开eclipse中的windows-->Preferences-->Team-->Git-->Config ...

ssh相关命令

ssh命令 ssh命令是openssh套件中的客户端连接工具,可以给予ssh加密协议实现安全的远程登录服务器. 语法ssh(选项)(参数)选项 -1:强制使用ssh协议版本1: -2:强制使用ssh协 ...

SNS团队第一次站立会议(2017.04.22)

一.当天站立式会议照片 本次会议主要内容:进一步明确了团队中各个成员的定位,说明了下一步团队工作的方向 二.每个人的工作 成员 昨天已完成的工作 今天计划完成的工作 罗于婕 系统架构设计及项目数据库设 ...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值