有沒有辦法說服Gradle接受資源文件(如XML文件)以及src/main/java
文件夾?Gradle:接受src/main/java文件夾中的資源文件
,因爲我需要把我的JavaFX的XML文件有這將是偉大的......
有沒有辦法說服Gradle接受資源文件(如XML文件)以及src/main/java
文件夾?Gradle:接受src/main/java文件夾中的資源文件
,因爲我需要把我的JavaFX的XML文件有這將是偉大的......
您可以定義做這樣的事情的gradle地方尋找資源文件:
sourceSets {
main {
resources {
srcDirs = ["src/main/java"]
includes = ["**/*.fxml"]
}
}
}
這實際上是這樣做的。但是,這是一個很好/很好的解決方案? – Hannes
這完全符合Gradle的最佳實踐,所以我會投贊成票 –
如果你打算使用這種方法來允許'src/main/java'中的資源(我個人討厭),我建議你使用'excludes = [「**/*。java」]'而不是'includes = [「**/*。fxml」]' –
正如其名建議src/main/java
用於JAVA文件。雖然可以調整gradle的默認值以允許此文件夾中的資源,但不應該(以我自己的觀點來看)。
我建議你堅持合理的約定,把你的XML等src/main/resources
。 Maven和Gradle都遵循這個約定。
OP聲明他們正在使用javaFX(顯然)會強制將fxml文件放在與其Java文件相同的路徑中。它違反慣例似乎不是他們的選擇。 Gradle支持爲這種類型的情況準確地定製資源的位置,不是嗎? – RaGe
當然......如果它必須是這樣,那麼Gradle會讓你按照另一個答案中所顯示的那樣做。我自己從來沒有用過javaFX,但感到驚訝的是它強制這個約定。 –
你的問題是什麼?什麼不行?這是關於部署資源不可用的地方嗎?爲什麼不使用將它們放在src/main/resources中的約定?您是否查看了https://docs.gradle.org/current/userguide/java_plugin.html以查看您可以重新定義資源subdir的位置? –
我無法幫助您使用Gradle,但您爲什麼需要放置FXML?文件在那裏? – mipa
@mipa JavaFX Scene Builder期望FXML文件與Controller類位於同一文件夾中。 – Hannes