当我转到包含.java类的目录,而该类又包含main()方法,并运行javac Application.java
时,我收到此错误:
然后当我运行java Application.java
只是为了查看输出时,我收到此错误:
Error: Could not find or load main class Application.java
显然它甚至不认识那里的课程。
这是java -version
:
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
这是javac -version
:
javac 1.8.0_45
不确定是什么问题。
有什么想法吗?
答案 0 :(得分:3)
它无法编译您的应用程序的原因是您从其他地方导入类,但您没有告诉编译器在哪里找到这些类。您需要将它们添加到编译器的类路径中。在这种情况下,您要从Spring框架中导入一些类,但是您没有向编译器提供相关的.jar
文件,以便它知道在哪里可以找到要导入的类。
您遇到的第二个错误是当您尝试运行程序时,但您不能,因为您还没有设法生成编译版本。
我强烈建议您下载Eclipse或IntelliJ IDEA或类似的IDE,并将其用于开发和编译。它将为您处理几乎所有这些。如果要从命令行进行编译,那么您前面有一条痛苦的道路。
答案 1 :(得分:1)
您的应用程序正在使用Spring之类的第三方库。你需要告诉java在哪里找到这些库。您可以将它们复制到某处并通过类路径配置引用它们。为了使事情更简单,请查看maven - 依赖管理系统。
答案 2 :(得分:1)
根据您评论的内容,您可以将所有第三方罐子放入某个文件夹并运行javac -cp "<folder_with_jars>" Application.java
。
如果没有任何编译错误,它将生成类文件,然后您可以使用java Application
执行