Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin 启动4J Can';我找不到主课_Kotlin_Javafx_Launch4j - Fatal编程技术网

Kotlin 启动4J Can';我找不到主课

Kotlin 启动4J Can';我找不到主课,kotlin,javafx,launch4j,Kotlin,Javafx,Launch4j,我花了一整天(以及许多天前)试图让Launch4J工作,但由于某种原因,它找不到主类文件。它将成功生成,但运行它只会导致: Error: Could not find or load main class net.path.to.Main Caused by: java.lang.ClassNotFoundException: net.path.to.Main 从研究和个人经验来看,问题通常与没有写出整个类路径或拥有并发布清单有关。我不认为这是明显的问题,因为L4J通常直接抱怨明显的问题。我已

我花了一整天(以及许多天前)试图让Launch4J工作,但由于某种原因,它找不到主类文件。它将成功生成,但运行它只会导致:

Error: Could not find or load main class net.path.to.Main
Caused by: java.lang.ClassNotFoundException: net.path.to.Main
从研究和个人经验来看,问题通常与没有写出整个类路径或拥有并发布清单有关。我不认为这是明显的问题,因为L4J通常直接抱怨明显的问题。我已经检查了清单和我的类路径拼写。完全正确。奇怪的是,如果我尝试将同一个jar与JSmooth(上次更新于2007年)一起使用,效果会很好

似乎Launch4J是罪魁祸首。发生这种事有什么原因吗

重要提示:

  • 科特林写作
  • 使用Java 1.8.0_202的计算机(主要用于安抚Launch4j)
  • 程序正在本地bin文件夹中使用OpenJDK11
目前的猜测:

  • Java/Kotlin互操作性问题。很少发生,但我以前也看到过这是一个问题
  • JavaFX问题。有时启动JavaFX程序可能会导致错误,但有一些简单的解决方法。我怀疑这是问题所在,因为任何错误通常发生在执行开始之后;它必须先找到主课,然后才能抱怨

看,也许这会给你一个提示不要这么想,因为他们的问题似乎在于没有包括资源或最低版本。我将所有资源都包含在我的jar中,并且我正在使用一个版本的OpenJFX。另外,我有jsmooth和l4j来使用openjdk11(在文章中提到)。虽然它们没有任何版本设置,但它们被设置为只使用捆绑的jdk,不使用任何回退选项。你能共享你的launch4j.xml配置吗?如果你不是以可执行文件的形式运行它,而是以jar(
java-jar-your.exe
)的形式运行它会抱怨main类吗?不,jar运行得很好。看,也许它会给你一个提示,我不这么认为,因为他们的问题似乎在于不包括资源或最低版本。我将所有资源都包含在我的jar中,并且我正在使用一个版本的OpenJFX。另外,我有jsmooth和l4j来使用openjdk11(在文章中提到)。虽然它们没有任何版本设置,但它们被设置为只使用捆绑的jdk,而不使用任何回退选项。您可以共享您的launch4j.xml配置吗?如果您不是作为可执行文件而是作为jar(
java-jar-your.exe
)运行,它会抱怨main类吗?不,jar运行正常。