簡體   English   中英

如果設置了classpath,如何解決“找不到主類”錯誤?

[英]How to fix the “main class not found” error if classpath is set?

我具有以下Java應用程序結構:

  • 項目名稱: GoodManagement
  • 主要包裝: goodmanagement
  • 主類路徑: goodmanagement.GoodManagementLauncher

我在Windows上使用NetBeans構建應用程序。 在Windows上啟動時,應用程序可以完美啟動。 這同樣適用於在Windows上啟動jar。

將jar復制到Raspberry Pi 2(適用於ARM32 v7的Oracle JDK 8)上的Ubuntu Mate時,無法使用java -jar GoodManagement.jar啟動jar。 它告訴我找不到或加載主類。

我嘗試了以下操作,但未成功:

  1. 用export CLASSPATH =。,CLASSPATH = .: [PATH to CLASSES FOLDER]設置CLASSPATH變量( $CLASSPATH )。
  2. 用-cp或-classpath像上面一樣設置類路徑。
  3. 將jar文件的絕對路徑用作-classpath。
  4. 使用classes文件夾的路徑(如1.),然后使用完全限定的類名(goodmanagement.GoodManagementLauncher)

那么,如何在Ubuntu上啟動我的應用程序呢?

EDIT1:用於構建應用程序的輸出:

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的VM(arm32 jdk1.8.60)中運行JavaFX應用程序。 嘗試編譯源代碼時,我發現編譯器無法找到JavaFX類。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM