这里有点困惑。环顾四周,什么也没找到。许多人似乎也有类似的问题,但我还没有找到解决方案。
我从here克隆了IntelliJ gradle非调制器hellofx示例应用程序。
构建并运行良好,很好。
然后我尝试构建工件。我做了Add -> JAR -> from modules with dependencies...
结果:
构建工件并尝试运行它会给我以下错误:
"C:\Program Files\Java\jdk-11.0.2\bin\java.exe" -Dfile.encoding=windows-1252 -jar E:\hellofx\out\artifacts\hellofx_main_jar\hellofx_main.jar
no main manifest attribute, in E:\hellofx\out\artifacts\hellofx_main_jar\hellofx_main.jar
但是Main-Class属性是在构建工件时生成的清单文件中:
答案 0 :(得分:0)
在Jose的答案here的帮助下修复了该问题。
我必须从javaFX的bin文件夹中添加本地库。
我必须采取额外的步骤,因为使用gradle进行构建不会将fxml和class文件放在一起进行构建。所以我必须将其添加到我的build.gradle中:
plugins {
//...
id 'idea'
}
sourceSets.main.output.resourcesDir = "build/classes/java/main"
idea {
module.outputDir file("out/production/classes")
}
此外,我还必须将META-INF文件夹移至资源文件夹,以便在构建时将其放置在正确的位置。