Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.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 Gradle无法生成、查找或加载主类_Java_Gradle_Main - Fatal编程技术网

Java Gradle无法生成、查找或加载主类

Java Gradle无法生成、查找或加载主类,java,gradle,main,Java,Gradle,Main,我正在学习如何在Java上创建我的第一个程序,并使用gradle进行编译和构建 这是程序的代码 class HelloGradle{ public static void main(String[] args) { System.out.println("Hello, world!"); }} 我将文件放入src->main->java->HelloGradle.java 然后我在apply插件中创建了build.gradle文件,其中包含这样的参数:“java” 当我尝试使用gradle b

我正在学习如何在Java上创建我的第一个程序,并使用gradle进行编译和构建

这是程序的代码

class HelloGradle{
public static void main(String[] args) {
System.out.println("Hello, world!");
}}
我将文件放入src->main->java->HelloGradle.java

然后我在apply插件中创建了build.gradle文件,其中包含这样的参数:“java”

当我尝试使用gradle build进行构建时,它会说build success full和create build folder 所以我将这些行添加到build.gradle文件中

然后我尝试使用这样的命令gradlerun从根文件夹运行它。但构建失败了。这是一个错误的日志

Task :run FAILED
Task ':run' is not up-to-date because:
Task has not declared any outputs despite executing actions.
Starting process 'command '/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/bin/java''.
     Working directory: /Users/dmytro/Desktop/java/sandbox
     Command: /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/bin/java
     -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant
     -cp /Users/dmytro/Desktop/java/sandbox/build/classes/java/main:/Users/dmytro/Desktop/java/sandbox/build/resources/main
     HelloGradle
Successfully started process 'command '/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/bin/java''
Error: Could not find or load main class HelloGradle
Caused by: java.lang.ClassNotFoundException: HelloGradle``

所以gradle似乎无法找到类文件,即使我在配置文件中指定了它。找到解决方案的下一步是什么。非常感谢

哇,我刚开始学习Java的课程,输入的内容和视频上的一模一样,但没有解释什么是公开的,这就是gradle找不到它的原因


但只要我加上一个代码。已在终端中成功构建并正常运行。谢谢大家。经验教训

您的代码是否有包名?Gradle可能正在查找该类的全名。mainClassName=org.gradle.sample.HelloGradleI试图按照您的建议更改配置文件,但迄今为止运气不佳。同样的错误。找不到主方法。我的代码没有包名。请尝试使用公共类HelloGradle并使用IDE,java文件位于何处?它的包是什么?主类应该是Public,在代码中添加是什么意思?你能说得更清楚些,让别人向你学习吗?可能会显示缺少的配置行?
Task :run FAILED
Task ':run' is not up-to-date because:
Task has not declared any outputs despite executing actions.
Starting process 'command '/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/bin/java''.
     Working directory: /Users/dmytro/Desktop/java/sandbox
     Command: /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/bin/java
     -Dfile.encoding=UTF-8 -Duser.country=US -Duser.language=en -Duser.variant
     -cp /Users/dmytro/Desktop/java/sandbox/build/classes/java/main:/Users/dmytro/Desktop/java/sandbox/build/resources/main
     HelloGradle
Successfully started process 'command '/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/bin/java''
Error: Could not find or load main class HelloGradle
Caused by: java.lang.ClassNotFoundException: HelloGradle``