小白提问:java cmd编译运行问题

fasloww 2017-09-25 04:54:23
一、刚装的java 1.9,安装在d:\jdk里,Path和ClassPath都没配置过,然后写了个HelloWorld.java放在D:\盘里。
二、打开cmd,路径修改到D:\jdk\bin,然后编译HelloWorld.java文件,产生class文件。
三、运行class文件,出错!


咋回事呢?小白晕了。。
...全文
507 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
ZeroToCry 2017-10-01
  • 打赏
  • 举报
回复
楼上正解...
Fant_ 2017-09-30
  • 打赏
  • 举报
回复
cmd不是说得很清楚了吗?找不到主类,因为你的PATH路径没有添加当前文件夹,修改PATH,加上"."
xiaobo000000 2017-09-27
  • 打赏
  • 举报
回复
除非你想所有的目录都设置为classpath,但是你新建一个文件后,又得添加,理论上是不可以的,因为你的想法显然违反了java这种编译解析型语言的编译原理,所以用javac的时候还是进到对应路径下,以后用工具了你就不会纠结这种问题了
fasloww 2017-09-27
  • 打赏
  • 举报
回复
引用 9 楼 xiaobo000000 的回复:
如图所示,一个是在C盘路径上运行,一个是在文件所在文件夹运行。
帅哥,你看是不是我讲的这个样子:因为没有配置classpath,所以java.exe运行时是从当前目录开始搜索的,所以我必须在D:\下用java,而不能再d:\jdk\bin路径下,即便我用了绝对路径。
fasloww 2017-09-27
  • 打赏
  • 举报
回复
统一回复下: 看了点资料,感觉弄懂了。 首先,安装的时候,有两个java.exe。一个在jdk中,一个在jre中。jre是给运行的人用的,如果为了运行,需要配置环境变量,太麻烦了,所以oracle就自动配置了jre中java.exe的环境变量。证明:当安装后,不配置任何环境变量,就可以在cmd中使用java.exe了;或者直接删除jdk中的java.exe,也是可以正常使用的。也就是说,我们平时用的java.exe,都是jre中的。 第二,如果不配置环境变量。那么使用javac.exe,毫无疑问只能进入d:\jdk\bin目录。而java.exe就可以在任何目录下使用。 第三,编译完成后,生成了class文件,假设文件在d:\Test路径下。此时有三种办法运行它: 1、直接在该文件路径下运行,d:\>Test java HelloWorld 2、在其他路径下,指定文件路径运行,比如在c:\> java -classpath d:\Test\HelloWorld 3、在其他路径下,设置临时环境变量运行,比如在c:\>下 set classpath = d:\Test java HelloWorld 这三种方法都是可以运行的。有不对情况请指正
繁华终归落尽 2017-09-27
  • 打赏
  • 举报
回复
指定一下classpath就行了

C:\Users\DELL>javac d://HelloWorld.java
C:\Users\DELL>java -classpath d:// HelloWorld
helloword
dop236 2017-09-27
  • 打赏
  • 举报
回复
你退回的D盘根目录,再执行java HelloWorld就可以了。 原理我也不知道,我也是初学。
galiniur0u 2017-09-26
  • 打赏
  • 举报
回复
没有配置环境变量么?配置好环境变量,系统才可以在任意目录下识别java、javac等命令。
zylyye 2017-09-26
  • 打赏
  • 举报
回复
环境配置问题
xiaobo000000 2017-09-26
  • 打赏
  • 举报
回复


如图所示,一个是在C盘路径上运行,一个是在文件所在文件夹运行。
fasloww 2017-09-25
  • 打赏
  • 举报
回复
引用 3 楼 qq_27762917 的回复:
都1.9了么。。我还在用1.6
紧跟时代啊,前辈
fasloww 2017-09-25
  • 打赏
  • 举报
回复
引用 4 楼 galiniur0u 的回复:
楼主要进入D盘,然后执行java {类名},javac通过了说明楼主的jdk安装没问题,只是执行语句的问题。建议楼主使用ide开发运行代码,减少了许多不必要的麻烦。
以后肯定用ide的,现在不是学习么,还是老老实实从小开始。就是不明白为什么不在jdk\bin目录下也能使用java.exe,javac就不行啊。。。晕了。。
galiniur0u 2017-09-25
  • 打赏
  • 举报
回复
楼主要进入D盘,然后执行java {类名},javac通过了说明楼主的jdk安装没问题,只是执行语句的问题。建议楼主使用ide开发运行代码,减少了许多不必要的麻烦。
fasloww 2017-09-25
  • 打赏
  • 举报
回复
链接中说前提是配置好环境变量了。我想问如果不配置环境变量,如何javac和java呢?
Freefish1994 2017-09-25
  • 打赏
  • 举报
回复
都1.9了么。。我还在用1.6
annkee058 2017-09-25
  • 打赏
  • 举报
回复
http://blog.csdn.net/HS1995125/article/details/47069311
内容概要:本文针对无刷直流电机驱动的电子机械制动(EMB)执行器,建立了考虑Stribeck摩擦特性的非线性耦合动力学模型,并在Simulink环境中完成了系统级仿真分析。研究综合集成了电机动力学、齿轮传动机构与制动执行机构的动力学特性,构建了高保真的机电一体化系统模型。重点引入Stribeck摩擦模型以精确描述低速工况下执行器内部存在的静摩擦、粘滞摩擦与库仑摩擦之间的过渡行为,有效提升了系统在启停、反向运动等瞬态过程中的动态响应仿真精度。通过多工况仿真验证了模型的有效性,能够准确反映摩擦引起的爬行、滞后与定位误差等非线性现象,为EMB系统的高性能控制算法设计(如摩擦补偿、滑模控制)与结构优化提供了高可信度的仿真平台。; 适合人群:从事汽车电子制动系统、电机驱动控制、机电系统建模与仿真研究的研究生、科研人员及工程技术人员,需具备扎实的机械动力学、自动控制理论基础和MATLAB/Simulink仿真能力。; 使用场景及目标:①用于高精度电子机械制动系统的设计验证与性能预测;②为消除摩擦非线性影响的先进控制策略(如自适应控制、智能控制)提供精确的被控对象模型;③深入探究Stribeck摩擦等非线性因素对系统动态性能(如响应延迟、稳态误差)的作用机理; 阅读建议:读者应结合提供的Simulink模型文件,深入剖析Stribeck摩擦模块的数学实现与参数辨识方法,建议通过改变输入指令(如阶跃、正弦)和负载条件进行对比仿真,以直观理解非线性摩擦对系统动态特性的影响。

62,622

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧