Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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 错误:在windows上运行jar文件时无法找到或加载主类_Java_Gradle_Jar - Fatal编程技术网

Java 错误:在windows上运行jar文件时无法找到或加载主类

Java 错误:在windows上运行jar文件时无法找到或加载主类,java,gradle,jar,Java,Gradle,Jar,我正在用gradle做一个java项目的家庭作业,通过windows命令提示符运行gradle构建的JAR文件时遇到了问题: 这是我的build.gradle txt: apply plugin: 'java' apply plugin: 'antlr' repositories { mavenCentral() } dependencies { antlr 'org.antlr:antlr4:4.7.1' testCompile 'junit:junit:4.12' } g

我正在用gradle做一个java项目的家庭作业,通过windows命令提示符运行gradle构建的JAR文件时遇到了问题:

这是我的build.gradle txt:

apply plugin: 'java'
apply plugin: 'antlr'

repositories {
  mavenCentral()
}

dependencies {
  antlr 'org.antlr:antlr4:4.7.1'
  testCompile 'junit:junit:4.12'
}

generateGrammarSource {
  arguments += ['-no-visitor', '-no-listener']
  outputDirectory = new File(buildDir.toString() + "/generated-src/antlr/main/TP2/")
}

jar {
  manifest {
    attributes (
      'Main-Class': 'TP2.Main',
      'Class-Path': configurations.runtimeClasspath.files.join(' ')
    )
  }
}

我已经检查了我的类路径目录,类名。。。当我键入下一个命令:
jar-tfbuild\libs\TP2.jar
时,我可以看到我的类被很好地打包在我的jar中,我的类位于以下目录:build\classes\java\main\TP2\main.class 所以我不明白为什么它不起作用。
我不是gradle的专家,因此非常感谢您的帮助,但我认为问题可能来自清单。

您的类文件应该位于
TP2\Main.class
位置。它在类路径中指定,用于查找类文件,我试过以防万一,但这不起作用,所以问题出在其他地方,而不是Classpath属性的工作方式。看见