Java无法编译和运行类
当我转到包含.java类的目录(该类又包含main()方法)并运行Java无法编译和运行类,java,javac,executable-jar,Java,Javac,Executable Jar,当我转到包含.java类的目录(该类又包含main()方法)并运行javac Application.java,我会得到以下错误: 然后,当我运行javaApplication.java只是为了查看输出时,我得到以下错误: Error: Could not find or load main class Application.java 显然,它甚至不认识那里的班级 这是java-version的输出: java version "1.8.0_45" Java(TM) SE Runtime
javac Application.java
,我会得到以下错误:
然后,当我运行javaApplication.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
我真的不知道怎么了
有什么想法吗?它无法编译您的应用程序的原因是您正在从其他地方导入类,但您没有告诉编译器在哪里可以找到这些类。您需要将它们添加到编译器的类路径中。在本例中,您正在从Spring框架导入一些类,但尚未向编译器提供相关的
.jar
文件,以便它知道在哪里可以找到您导入的类
第二个错误是当你试图运行你的程序,但你不能,因为你还没有设法生成一个编译版本
我强烈建议您下载Eclipse或IntelliJ IDEA或类似的IDE,并将其用于开发和编译。它将为您处理几乎所有这些。如果您想从命令行编译,您将面临一条痛苦的道路。它无法编译您的应用程序的原因是您正在从其他地方导入类,但您没有告诉编译器在哪里可以找到这些类。您需要将它们添加到编译器的类路径中。在本例中,您正在从Spring框架导入一些类,但尚未向编译器提供相关的
.jar
文件,以便它知道在哪里可以找到您导入的类
第二个错误是当你试图运行你的程序,但你不能,因为你还没有设法生成一个编译版本
我强烈建议您下载Eclipse或IntelliJ IDEA或类似的IDE,并将其用于开发和编译。它将为您处理几乎所有这些。如果您想从命令行编译,您将面临一条痛苦的道路。您的应用程序正在使用一些第三方库,如Spring。您需要告诉java在哪里可以找到这些库。您可以将它们复制到某个地方,并通过类路径配置引用它们。为了使事情更简单,请查看maven依赖关系管理系统。您的应用程序正在使用一些第三方库,如Spring。您需要告诉java在哪里可以找到这些库。您可以将它们复制到某个地方,并通过类路径配置引用它们。为了使事情变得更简单,请查看maven依赖关系管理系统。根据您的评论,您可以将所有第三部分JAR放在某个文件夹中,然后运行
javac-cp“Application.java
如果没有任何编译错误,它将生成类文件,然后您可以使用
java应用程序执行,根据您的评论,您可以将所有第三部分JAR放入某个文件夹并运行javac-cp“”Application.java
如果没有任何编译错误,它将生成类文件,然后您可以使用java应用程序执行如果您尝试从命令行执行,则必须使用java应用程序
。此处未使用任何文件类型。-包含howto的屏幕截图确实包含正确的表单!从使用Spring的应用程序开始是非常大胆的。尝试一些Hello World并从中继续。似乎您下载了一些github项目,并试图通过命令行编译一个类。最好的方法是将其导入IDE,因为它使用第三部分库。如果您试图从命令行执行,则必须使用java应用程序
。此处未使用任何文件类型。-包含howto的屏幕截图确实包含正确的表单!从使用Spring的应用程序开始是非常大胆的。尝试一些Hello World并从中继续。似乎您下载了一些github项目,并试图通过命令行编译一个类。最好的方法是将其导入IDE,因为它使用第三部分库。“要使事情更简单,请查看maven…”。。。这取决于你所说的更简单是什么意思。对于了解Maven的人来说,它的使用是很自然的。对于Maven未知的人来说,它提供了一个看似模糊的复杂场景。使用Maven比把正确的瓶子放到正确的位置和正确配置类路径要简单得多。对于初学者来说更简单。你只要复制和粘贴一些xml,它就会像魔术一样工作。我假设你属于前一类。Maven POM层次结构可能变得非常复杂。每天和Maven生活在一起的人只是忘记了它看起来是多么的不直观。“为了让事情变得更简单,看看Maven…”。。。这取决于你所说的更简单是什么意思。对于了解Maven的人来说,它的使用是很自然的。对于Maven未知的人来说,它提供了一个看似模糊的复杂场景。使用Maven比把正确的瓶子放到正确的位置和正确配置类路径要简单得多。对于初学者来说更简单。你只要复制和粘贴一些xml,它就会像魔术一样工作。我假设你属于前一类。Maven POM层次结构可能变得非常复杂。每天和Maven生活在一起的人只是忘记了它看起来是多么的不直观。对于Java学习者来说,流行的IDE抽象化了所有(或大部分)构建脚本的复杂性。我问这个问题的原因是因为我需要为启动java应用程序的docker容器编写一个bash脚本。我已经使用Eclipse 2年了,因为它,我真的不知道如何通过命令行编译java类。如果你已经使用Eclipse 2年了,现在正在编写一个多模块应用程序,需要