Java屏幕保护程序加载错误的主类,有什么想法吗?

时间:2018-01-26 10:13:44

标签: java gradle javafx windows-screensaver javafx-gradle-plugin

我正在使用Java,JavaFX,JavaFX Packager,Gradle JavaFX Packager插件等构建Windows屏幕保护程序。我使用此配置生成各种可执行文件:

jfx {
    mainClass = "tech.project.project.ConfiguratorApp"
    vendor = "Project"
    appName = "Project"
    nativeReleaseVersion = version
    secondaryLaunchers = [
            [
                    appName  : "Project Renderer",
                    mainClass: "tech.project.project.RendererApp",
                    needMenu : true
            ],
            [
                    appName  : "Project Displayer",
                    mainClass: "tech.project.project.DisplayerApp",
                    needMenu : true
            ],
            [
                    appName  : "Project Screensaver",
                    mainClass: "tech.project.project.WinScreensaverApp",
                    needMenu : false
            ]
    ]
}

配置,预览和测试屏幕保护程序时,一切运行良好,但当屏幕保护程序实际运行时,主类似乎是DisplayerApp而不是WinScreensaverApp

任何想法为什么或如何收集有关正在发生的事情的更多信息?

我设法找到了Windows命令行:

C:\PROGRA~1\Project\PROJEC~1.SCR /s

从过去爆炸!但是我在控制台中手动运行该命令,我得到了相应的启动器。

1 个答案:

答案 0 :(得分:1)

我找到了一个解决方案。我有各种可执行文件:

  • C:\Program Files\Project\Project A.exe
  • C:\Program Files\Project\Project B.exe
  • C:\Program Files\Project\Project C.exe
  • C:\Program Files\Project\Project D.scr

C:\Program Files\Project\Project A.exe执行时看起来C:\Program Files\Project\Project D.scr正在运行,而不是C:\PROGRA~1\Project\PROJEC~1.SCR /s

我将屏幕保护程序的名称更改为:

  • C:\Program Files\Project\ProD.scr

它开始正常工作。我不确定为什么,但由于我现在不再进一步调查,我想发布解决方案,以防其他人遇到类似的问题,这可能会解决这个问题。