Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java无法编译和运行类_Java_Javac_Executable Jar - Fatal编程技术网

Java无法编译和运行类

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

当我转到包含.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
我真的不知道怎么了


有什么想法吗?

它无法编译您的应用程序的原因是您正在从其他地方导入类,但您没有告诉编译器在哪里可以找到这些类。您需要将它们添加到编译器的类路径中。在本例中,您正在从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年了,现在正在编写一个多模块应用程序,需要