如果设置了类路径,如何修复 "main class not found" 错误?

How to fix the "main class not found" error if classpath is set?

我有以下 Java 应用程序结构:

我在 Windows 上使用 NetBeans 构建应用程序。 在 Windows 上启动时,应用程序完美启动。这同样适用于在 Windows.

上启动 jar

将 jar 复制到 Ubuntu Mate on my Raspberry Pi 2(Oracle JDK 8 for ARM32 v7)时,我无法使用 java -jar GoodManagement.jar 启动 jar。 它告诉我无法找到或加载主要 class。

我尝试了以下但没有成功:

  1. 设置 CLASSPATH 变量 ($CLASSPATH) export CLASSPATH=., CLASSPATH=.:[PATH TO 类 FOLDER].
  2. 像上面那样使用 -cp 或 -classpath 设置 classpath。
  3. 使用jar文件的绝对路径作为-classpath.
  4. 使用 classes 文件夹的路径(如 1.),然后使用完全限定的 class 名称 (goodmanagement.GoodManagementLauncher)

那么我该怎么做才能在 Ubuntu 上启动我的应用程序?

编辑1: 构建应用程序的输出:

ant -f D:\Documents\Fachschaft\GoodManagement\GoodManagement jfx-rebuild
init:
deps-clean:
Updating property file: D:\Documents\Fachschaft\GoodManagement\GoodManagement\build\built-clean.properties
Deleting directory D:\Documents\Fachschaft\GoodManagement\GoodManagement\build
clean:
init:
deps-jar:
Created dir: D:\Documents\Fachschaft\GoodManagement\GoodManagement\build
Updating property file: D:\Documents\Fachschaft\GoodManagement\GoodManagement\build\built-jar.properties
Created dir: D:\Documents\Fachschaft\GoodManagement\GoodManagement\build\classes
Created dir: D:\Documents\Fachschaft\GoodManagement\GoodManagement\build\empty
Created dir: D:\Documents\Fachschaft\GoodManagement\GoodManagement\build\generated-sources\ap-source-output
Compiling 39 source files to D:\Documents\Fachschaft\GoodManagement\GoodManagement\build\classes
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Copying 12 files to D:\Documents\Fachschaft\GoodManagement\GoodManagement\build\classes
compile:
Created dir: D:\Documents\Fachschaft\GoodManagement\GoodManagement\dist
Detected JavaFX Ant API version 1.3
Launching <fx:jar> task from C:\Program Files\Java\jdk1.8.0_51\jre\..\lib\ant-javafx.jar
Warning: From JDK7u25 the Codebase manifest attribute should be used to restrict JAR repurposing.
Please set manifest.custom.codebase property to override the current default non-secure value '*'.
Launching <fx:deploy> task from C:\Program Files\Java\jdk1.8.0_51\jre\..\lib\ant-javafx.jar
jfx-deployment-script:
jfx-deployment:
jar:
jfx-rebuild:
BUILD SUCCESSFUL (total time: 6 seconds)

现在是清单文件:

Manifest-Version: 1.0
Implementation-Title: GoodManagement
Implementation-Version: 1.0
Permissions: sandbox
Codebase: *
JavaFX-Version: 8.0
Class-Path: 
Created-By: JavaFX Packager
Implementation-Vendor: Daniel
Main-Class: goodmanagement.GoodManagementLauncher

问题是我试图在不支持 JavaFX (arm32 jdk1.8.60) 的 VM 中 运行 JavaFX 应用程序。 在尝试编译源代码时,我发现编译器无法找到 JavaFX 类.