我们使用build.gradle创建了包含所有依赖项的jar文件。它已成功创建,所有依赖项和.class文件都在相应的目录下(例如,com.role.Browse.framework下的Launch class)。
但是在运行jar时遇到错误:无法找到或加载主
C:\IdeaProjects\launch_app\build\libs>java -jar Launch_App-all-1.0.0.jar
Error: Could not find or load main class com.role.Browse.framework.Launch
以下是 build.gradle
的快照apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'eclipse'
version '1.0.0'
description = ""Launch_App""
sourceCompatibility = 1.8
targetCompatibility = 1.8
tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
}
//create a single Jar with all dependencies
task fatJar(type: Jar) {
manifest {
attributes 'Implementation-Title': 'Gradle Jar File',
'Implementation-Version': version,
'Main-Class': 'com.role.Browse.framework.Launch'
}
baseName = project.name + '-all'
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
with jar }
//To add this single Jar standard assemble or build task
artifacts {
archives fatJar
}
我为类似的问题提出了一些解决方案,但对我来说没有任何作用,
注意:我的主类(即Launch)扩展了junit.framework.TestCase类,junit库也包含在.jar文件中。
如果我在这里失踪了,请告诉我。
答案 0 :(得分:0)
即使是我也面临同样的问题。 对于我执行jar文件执行命令后的执行 java -jar jarfile_name.jar没有输出。
请检查几点。 检查manifest.mf文件,并查看其中应包含主类的条目 像Main class =“ class_Name”