plugins { id 'java-library' alias(catalog.plugins.envelope) } import net.woggioni.gradle.envelope.EnvelopeJarTask dependencies { implementation project(':jpacrepo-api') implementation catalog.slf4j.api implementation catalog.log4j.slf4j.impl runtimeOnly catalog.jboss.ejb.client } java { modularity.inferModulePath = true } tasks.named(JavaPlugin.COMPILE_JAVA_TASK_NAME, JavaCompile) { options.javaModuleMainClass = 'net.woggioni.jpacrepo.client.Main' // options.compilerArgs += [ // '--add-reads', 'javax.ejb=ALL-UNNAMED' // ] } Provider envelopeJarTaskProvider = tasks.named('envelopeJar', EnvelopeJarTask.class) { mainClass = 'net.woggioni.jpacrepo.client.Main' } tasks.register('run', JavaExec) { JavaExec t -> classpath(project.sourceSets.main.output.dirs) classpath(project.sourceSets.main.runtimeClasspath) mainModule = 'net.woggioni.jpacrepo.client' mainClass = 'net.woggioni.jpacrepo.client.Main' // String modulePath = project.sourceSets.main.runtimeClasspath.files.stream() // .map(File::toString) // .collect(Collectors.joining(System.getProperty('path.separator'))) // jvmArgs = [ // '--add-reads', 'net.woggioni.jpacrepo.client=ALL-UNNAMED', // '--module-path', modulePath // ] modularity.inferModulePath = true }