首页 > 解决方案 > 即使 jar 工作正常,Launch4j 也无法找到主类

问题描述

我使用eclipse和JavaFX制作了一个程序并导出了jar可执行文件。然后我尝试使用 vm 参数运行 jar,它工作正常,但是当我尝试使用 Launch4j 制作可执行程序时,它说它找不到主类。我怀疑这是因为我的主类不在默认包中,而是在一个名为“应用程序”的包中,但我不知道如何解决这个问题。启动创建的 .exe 时显示的错误:

Executing: C:\Users\<user>\Desktop\CalculateFX.exe
Error: Could not find or load main class CalculatorFX.jar
Caused by: java.lang.ClassNotFoundException: CalculatorFX.jar

Launch4j 配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<launch4jConfig>
  <dontWrapJar>false</dontWrapJar>
  <headerType>gui</headerType>
  <jar>C:\Users\<user>\Desktop\CalculatorFX.jar</jar>
  <outfile>C:\Users\<user>\Desktop\CalculateFX.exe</outfile>
  <errTitle></errTitle>
  <cmdLine></cmdLine>
  <chdir>.</chdir>
  <priority>normal</priority>
  <downloadUrl>http://java.com/download</downloadUrl>
  <supportUrl></supportUrl>
  <stayAlive>false</stayAlive>
  <restartOnCrash>false</restartOnCrash>
  <manifest></manifest>
  <icon></icon>
  <jre>
    <path>C:\Program Files\Java\jdk-15.0.2</path>
    <bundledJre64Bit>false</bundledJre64Bit>
    <bundledJreAsFallback>false</bundledJreAsFallback>
    <minVersion>1.7</minVersion>
    <maxVersion>1.9</maxVersion>
    <jdkPreference>preferJre</jdkPreference>
    <runtimeBits>64/32</runtimeBits>
    <opt>--module-path &quot;C:\Users\<user>\Downloads\javafx-sdk-16\lib&quot; --add-modules javafx.controls,javafx.fxml CalculatorFX.jar</opt>
  </jre>
</launch4jConfig>

标签: javaeclipsejavafxlaunch4j

解决方案


推荐阅读