龙空技术网

执行Jar报错:找不到主类

爪巴戈 121

前言:

如今兄弟们对“java执行main”大致比较关注,姐妹们都需要分析一些“java执行main”的相关知识。那么小编同时在网摘上搜集了一些对于“java执行main””的相关内容,希望朋友们能喜欢,兄弟们快快来学习一下吧!

执行Jar报错:“no main manifest attribute“,主要原因是:打包Jar时, Jar 文件内META-INF/MANIFEST.MF文件,没有指定Main-Class: you.package.MainClass。

解决办法也很简单!

使用Maven打包时配置如下:

pom.xml中添加maven-assembly-plugin插件。

<plugin>    <artifactId>maven-assembly-plugin</artifactId>    <executions>      <execution>        <phase>package</phase>        <goals>          <goal>single</goal>        </goals>      </execution>    </executions>    <configuration>      <archive>        <manifest>          <addClasspath>true</addClasspath>          <--! 在这里指定主类 -->          <mainClass>you.package.MainClass</mainClass>        </manifest>      </archive>      <descriptorRefs>        <descriptorRef>jar-with-dependencies</descriptorRef>      </descriptorRefs>    </configuration>  </plugin> 

使用Gradle打包时配置如下:

build.gradle中进行配置

apply plugin: 'java'jar {    manifest {        // 指定主类        attributes 'Main-Class': 'you.package.MainClass'    }}

标签: #java执行main #java执行jar包中指定class文件 #java 执行jar包中的类 #java classpath 执行jar #java可执行jar运行不了