В файле сборки Gradle ниже зависимость fileTree загружает некоторые локальные jar-файлы, но компиляция завершается ошибкой с такими ошибками, как «пакет groovy.text объявлен в безымянном модуле, но модуль groovy.text не читает его». Я не уверен, в чем проблема, может быть, мне нужно добавить что-то в задачу compileJava? Текущая конфигурация используется для приложения JavaFx, как описано в эта ветка
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.google.gradle:osdetector-gradle-plugin:1.6.0'
}
}
apply plugin: 'application'
apply plugin: 'com.google.osdetector'
ext.platform = osdetector.os == 'osx' ? 'mac' : osdetector.os == 'windows' ? 'win' : osdetector.os
repositories {
mavenCentral()
flatDir {
dirs 'src/main/lib'
}
}
dependencies {
compile fileTree(dir: 'src/main/lib', include: ['*.jar'])
compile "org.openjfx:javafx-base:11:$platform"
compile "org.openjfx:javafx-graphics:11:$platform"
compile "org.openjfx:javafx-controls:11:$platform"
compile "org.openjfx:javafx-web:11:$platform"
}
compileJava {
doFirst {
options.compilerArgs = [
'--module-path', classpath.asPath,
'--add-modules', 'javafx.controls',
'--add-modules', 'javafx.graphics',
'--add-modules', 'javafx.web'
]
}
}
run {
doFirst {
jvmArgs = [
'--module-path', classpath.asPath,
'--add-modules', 'javafx.controls'
]
}
}
mainClassName = 'HelloFX'
Почему вы добавляете свои библиотеки в папку src (src/main/lib)? Вы можете попробовать переместить их на lib, а не на src?
Я переместил папку и исправил build.gradle, но ошибка осталась прежней
У вас есть файл module-info.java? тогда вам нужно добавить что-то вроде requires groovy.text.
Идеальным решением @dprutean было бы добавить эти jar-файлы в путь к модулю, но с учетом того, что вы могли намеренно поместить их в путь к классам, вы можете использовать аргументы виртуальной машины --add-reads groovy.text=ALL-UNNAMED для временного решения этой проблемы.




После дополнительных исследований я обнаружил, что jar-файлы передаются по пути класса к компилятору. Но компиляция завершается неудачей из-за нескольких ошибок, таких как «пакет groovy.text объявлен в безымянном модуле, но модуль groovy.text не читает его». Что это могло быть?