J'ai fait un détour jusqu'à ce que je puisse le faire, alors prenez note. L'environnement est IntelliJ. Je n'utilise pas Eclipse donc je ne sais pas.
Vous pouvez utiliser org.javamodularity.moduleplugin pour tester des projets modulaires sans configuration particulière, mais si vous utilisez TestFX Il a fallu rendre le module visible en utilisant l'option '- add-opens' de la JVM.
Voici un exemple de build.gradle
build.gradle
plugins {
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.7'
id 'org.beryx.jlink' version '2.10.4'
id "org.javamodularity.moduleplugin" version "1.5.0"
}
group 'com.sample'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.12
mainClassName = "$moduleName/com.sample.Main"
repositories {
mavenCentral()
}
//paramètres du plug-in javafx
javafx {
version = "12"
modules = ['javafx.controls', 'javafx.fxml']
}
//paramètres du plug-in jlink
jlink {
options = ['--strip-debug', '--compress', '2', '--no-header-files', '--no-man-pages']
launcher{
name = "$moduleName"
}
}
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.3.1'
testImplementation 'org.junit.jupiter:junit-jupiter-params:5.3.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.3.1'
testCompile group: 'org.testfx', name: 'testfx-junit5', version: '4.0.15-alpha'
}
test {
useJUnitPlatform()
testLogging {
events "passed", "skipped", "failed"
}
//Options pour TestFX
jvmArgs = [
'--add-opens', "$moduleName/com.sample.foo=org.testfx.junit5",
'--add-opens', 'javafx.graphics/com.sun.javafx.application=org.testfx'
]
}
Recommended Posts