构建和执行JAR文件错误:找不到主类和不支持的major.minor版本52.0

问题描述 投票:0回答:2

在NetBeans中构建Java程序后,我压缩了dist文件夹,将程序放在USB中。在另一台计算机中,在解压缩所有文件后,我尝试运行JAR文件但是Window提示符说:

“无法找到主类:logic.Main。程序将退出。”

在研究并尝试了类似问题的解决方案(即创建清单文件,创建.bat文件)但没有任何作用。

然后我在命令提示符下运行它,这些是结果:enter image description here

有2个问题:找不到主类,而在另一台计算机上,Java没有更新?怎么解决这个?

java executable-jar
2个回答
1
投票

它实际上能够找到一个logic.Main,但它无法加载它,因为它是用Java 8编译的,用户的机器运行的是早期版本的Java。在早期版本的Java上编译文件或在目标计算机上更新Java将解决该问题。


0
投票

有多种方法可以创建可执行jar。

在netbeans中有一个选项

Project Properties -> Build -> Packaging -> Build JAR after compiling

Maven Build也可用于创建可执行jar。在下面的maven插件中定义主类。您也可以选择编译器版本以避免重大的小问题。

   <plugin>
    <!-- Build an executable JAR -->
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.6</version>
    <configuration>
      <archive>
        <manifest>
          <addClasspath>true</addClasspath>
          <classpathPrefix>lib/</classpathPrefix>
          <mainClass>com.kulhade.elasticsearch.Indexer</mainClass>
        </manifest>
      </archive>
    </configuration>
  </plugin>
  <plugin>
    <groupId>org.dstovall</groupId>
    <artifactId>onejar-maven-plugin</artifactId>
    <version>1.4.4</version>
    <executions>
      <execution>
        <goals>
          <goal>one-jar</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
© www.soinside.com 2019 - 2024. All rights reserved.